JavaScript Alarm zu stoppen zeigt nach Drücken ok

stimmen
3

Ich möchte eine Benachrichtigung zeigen , wenn ich etwas in meinem Facebook - Posteingang haben. Ich denke , es ist leicht erreicht werden kann userscripts mit ... das ist , was ich bisher (Dank an die Jungs an den userscripts Foren):

document.addEventListener(DOMNodeInserted, function() {
  var count;
  if ((count=parseInt(document.getElementById(fb_menu_inbox_unread_count).textContent)) > 0)
  alert(You have +count+ new message+(count==1 ?  : s)+.);
}, true);

Dies funktioniert gut, außer der Nachricht in einer Schleife stecken bleibt nach „OK“, klicken und taucht immer wieder auf. Gibt es eine Möglichkeit, die Nachricht zu stoppen, nachdem ich die Warnung klicken Sie entlassen?

Veröffentlicht am 29/04/2009 um 22:55
quelle vom benutzer
In anderen Sprachen...                            


2 antworten

stimmen
3

Fügen Sie eine Variable, die verfolgen, wie viele Nachrichten gibt letzten Alarm waren, und zeigt nicht, wenn diese Variable nicht geändert hat.

Etwas wie:

document.addEventListener(
  "DOMNodeInserted", 
  function() { 
    var count = parseInt(document.getElementById("fb_menu_inbox_unread_count").textContent);
    if (count > 0 && count != lastCount) {
      alert("You have "+count+" new message"+(count==1 ? "" : "s")+"."); }, true);
    }
    lastCount = count;  // Remember count to avoid continuous alerts.

Außerdem würde ich das Schreiben von Code alle in einem wie vermeiden, wie Sie in Ihrem ursprünglichen Post tat. Es macht es schwieriger, zu lesen und ändern, wenn es sein muss.

Beantwortet am 29/04/2009 um 22:59
quelle vom benutzer

stimmen
0

Legen Sie eine benutzerdefinierte Cookie document.cookie mit der Zählung zu speichern, dann tun Sie Ihre regelmäßigen Kontrollen

Beantwortet am 29/04/2009 um 23:18
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more