Ajax-Request bei erneuten Focus der Seite

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

  • Ajax-Request bei erneuten Focus der Seite

    Hallo ,

    Ich habe gerade ein Problem: Ich möchte, dass wenn ein Benutzer meiner Seite in ein anderes Tab wechselt oder das Fenster minimiert (also einfach das Fenster/Tab "defokusiert") und danach sich das Fenster/Tab wieder anzeige lässt, dass ein Ajax-Request abgsetzt wird.

    So wie bei Facebook... sobald man das Tab/Fenster mit Facebook wieder öffnet, werden die neuen Beiträge geladen die in der Zwischenzeit gemacht wurden.

    Auf was für einen Event muss ich da achten? Ich hoffe mir kann jemand weiterhelfen ...

  • #2
    Hallo,

    Zitat von pascal007 Beitrag anzeigen
    Auf was für einen Event muss ich da achten?
    document.onfocus

    Gruß,

    Amica
    [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
    Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
    Super, danke!
    [/COLOR]

    Kommentar


    • #3
      Super danke viel mals! Das ich das nicht alleine rausbekommen habe .

      Kommentar


      • #4
        Und ggf. noch onblur, um erst mal zu merken, dass das Fenster/Tab minimiert/in den Hintergrund gesetzt wurde, um dann noch geplante Aktualisierungen bis auf weiteres einzustellen.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Zitat von wahsaga Beitrag anzeigen
          Und ggf. noch onblur, um erst mal zu merken, dass das Fenster/Tab minimiert/in den Hintergrund gesetzt wurde, um dann noch geplante Aktualisierungen bis auf weiteres einzustellen.
          Genau das habe ich nun versucht. Ich habe es alleerdings nicht hinbekommen meine PeriodicalUpdaters von prototype zu stoppen:

          Code:
          var updatePrivate = new Ajax.PeriodicalUpdater('content', 'ajax.php', {
            parameters: { module: 'loadMessages', filter: 'private' },
            method: 'post', frequency: 10,
            onSuccess: function(transport) { $('respondmsg').innerHTML = 'UPDATE! ' + new Date(); }
          });
          
          
          /** onBlur / onFocus */
          if (/*@cc_on!@*/false) { // check for Internet Explorer
          	document.onfocusin = onFocus;
          	document.onfocusout = onBlur;
          } else {
          	window.onfocus = onFocus;
          	window.onblur = onBlur;
          }
          
          function onBlur() {
          	$('respondmsg').innerHTML = 'blurred';
          	$('respondmsg').show();
          	updatePrivate.stop();
          };
          function onFocus(){
          	$('respondmsg').innerHTML = 'focused';
          	$('respondmsg').show();
          	updatePrivate.start();
          };
          Wenn ich direkt nach meinem PeriodicalUpdater die stop() methode aufrufe, stoppt er auch. Aber in den Funktionen drin scheint er es zu ignorieren. Wieso das? das innerHTML in den Funktionen klappt tipp top... in Firefox und IE.

          Das stoppen des Updaters klappt nur im IE...
          Zuletzt geändert von pascal007; 14.07.2010, 15:07.

          Kommentar


          • #6
            Vielleicht solltest du die Funktionen definieren, bevor du sie an den Event bindest und nicht nachher
            [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
            Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
            Super, danke!
            [/COLOR]

            Kommentar


            • #7
              Das ändert nichts . Im IE gehts im FF nicht... das innerHTML der Funktionen geht aber in beiden Browsern. Nur der PeriodicalUpdater stoppt nur im IE...

              Kommentar

              Lädt...
              X