Ankündigung

Einklappen
Keine Ankündigung bisher.

Javascript-Timer funktioniert in Internet Explorer jedoch nicht in Firefox

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Javascript-Timer funktioniert in Internet Explorer jedoch nicht in Firefox

    Hallo,

    ich habe eine Homepage und möchte wissen, wie lange sich die Besucher darauf aufhalten. Zu diesem Zweck wird bei Besuchsbeginn ein Sekundenzähler gestartet (time_object.StartTiming()) und beim Verlassen gestoppt (time_object.EndTiming()):


    HTML-Code:
    <body id="startseite" onbeforeunload="time_object.EndTiming()" onload="time_object.StartTiming()">

    Code:
    function timestamp_class(this_current_time, this_start_time, this_end_time, this_time_difference) {
                    this.this_current_time = this_current_time;
                    this.this_start_time = this_start_time;
                    this.this_end_time = this_end_time;
                    this.this_time_difference = this_time_difference;
                    this.GetCurrentTime = GetCurrentTime;
                    this.StartTiming = StartTiming;
                    this.EndTiming = EndTiming;
            }
    
            //Get current time from date timestamp
            function GetCurrentTime() {
            var my_current_timestamp;
                    my_current_timestamp = new Date();                //stamp current date & time
                    return my_current_timestamp.getTime();
                    }
    
            //Stamp current time as start time and reset display textbox
            function StartTiming() {
                    this.this_start_time = GetCurrentTime();        //stamp current time
                    }
    
    
            //Stamp current time as stop time, compute elapsed time difference and display in textbox
            function EndTiming() {
                    this.this_end_time = GetCurrentTime();                //stamp current time
                    this.this_time_difference = (this.this_end_time - this.this_start_time) / 1000;        //compute elapsed time
                    visit_duration = this.this_time_difference;
                    window.location.href = "../javascript/send_visit_duration_to_db.php?name=" + visit_duration;
    
                     var startTime = Date.now();                  //beginning of loop that delays closure of browser window for database entry
                     while ((Date.now() - startTime) < 300) {     //closure of browser window is delayed by 300 milliseconds
                             var i;
                             i = i + 1;
                     }                                            //end of loop that delays closure of browser window for database entry
    
            }
    
    
    var time_object = new timestamp_class(0, 0, 0, 0);        //create new time object and initialize it

    Funktioniert perfekt Internet Explorer, jedoch nicht in Firefox.

    Könnte mir bitte jemand dabei helfen, dass das Ganze auch in Firefox klappt?



    Vielen Dank für Eure Hilfe!!

  • #2
    Hau deinen Code mal in JSLint, der wirft ne Menge Warnungen

    Kommentar


    • #3
      Danke für die Rückmeldung chim!
      Irgendwie tut sich bei mir nichts, wenn ich den Code bei JSLint reinpaste, hab leider null Erfahrung damit...
      Hab es mal in einem anderen JS-Validation Programm versucht und da wurde nur bemängelt, dass die variable visit_duration undefiniert war, was ich natürlich mittlerweile korrigiert habe!

      Das Hauptproblem dürfte aber viel weiter vorne liegen, also beim Aufruf der JS-Function, da auch kein alert klappt, wenn ich ihn ganz am Anfang einbaue.

      Kann es sein, dass Firefox hiermit irgendein Problem hat?

      Code:
      <body id="startseite" onbeforeunload="time_object.EndTiming()" onload="time_object.StartTiming()">
      
      

      Kommentar


      • #4
        Deine Frage hat im PHP-Anfängerforum nix verloren das diese absolut garnix mit PHP zu tun hat!
        PHP-Manual ¡ mysql_* ist veraltet ¡ Debugging: Finde DEINE Fehler selbst ¡ Passwort-Hashing ¡ Prepared Statements

        Kommentar


        • #5
          Tut mir leid, hab das irgendwie als allgemeines Anfängerforum interpretiert, werde natürlich sofort zu Javascript wechseln!

          Kommentar

          Lädt...
          X