jQuery - focus de fenêtre, le flou des événements de déclenchement - fonctionne dans Firefox et Chrome
En un mot; j'ai écrit une simple application de chat pour un pote et moi de l'utiliser. Lorsque la fenêtre de l'exécution de l'application n'ont pas le focus (réduite ou derrière d'autres fenêtres) et un message arrive, je veux changer les fenêtres de la barre de titre pour servir d'alerte. Exactement comme Google application de chat dans GMail.
Tout fonctionne parfaitement sous Firefox et Chrome, mais pas dans IE7 (n'ai pas testé 8).
C'est le code que j'utilise déterminer si la fenêtre a le focus. Cela peut-il être écrit différemment de travailler aussi dans IE? Aussi, je suis ouvert à toutes les autres approches pour accomplir la même chose. Merci beaucoup à l'avance.
$(window).bind("blur", function() {
hasfocus = false;
});
$(window).bind("focus", function() {
hasfocus = true;
});
OriginalL'auteur brian newman | 2009-08-10
Vous devez vous connecter pour publier un commentaire.
Je ne pense pas que google chat utilise la fenêtre pour vérifier la mise au point. Il utilise la zone de texte de l'utilisateur à discuter avec vous. Dès que la zone de texte reçoit le focus ", Dit..." arrête de faire la boucle.
Vous voudrez peut-être consulter pour des mouvements de souris pour voir si la fenêtre a le focus. Autre que cela, je suis encore à essayer de comprendre comment faire pour vérifier la fenêtre pour se concentrer en essayant de garder une page live.
OriginalL'auteur dpgimnic
Ce peu de jquery va travailler dans IE et tous les bons navigateurs (chrome, ff, etc). La clé est le document focusin\focusout pour IE soutien.
c'est très intéressant, je vais garder cela à l'esprit.
j'ai été incapable de le reproduire avec cette jsfiddle dans IE8 jsfiddle.net/KCW7G/8
OriginalL'auteur mikeycgto
Ce qui se passe si vous essayez de se lier à l'élément de document?
OriginalL'auteur James Wiseman