Ich suche nach einer Nicht-JQuery-Lösung für eine scheinbar einfache Aufgabe: Erkennen, wenn die Maus die Seite verlassen hat. ABER, Standardmethoden mit:Wie kann es erkannt werden, wenn der Mauszeiger die Webseite verlässt, wenn der Cursor die Kante nicht berührt?
document.onmouseleave
//or
document.onmouseout
funktioniert nur, wenn die Maus die Seite über die Kante verlässt.
Das bedeutet, es wird scheitern wenn die Maus verlässt durch Überkreuzen in ein anderes Programm, das einen höheren Fokus hat (zB: Notepad.exe).
Es wird auch fehlschlagen, wenn der Browser (zB: Win + D) minimiert wird, oder wenn Alt + Tab verwendet wird. Es gibt wahrscheinlich andere Möglichkeiten, wie es scheitern wird.
Welche anderen Methoden haben einen besseren Erfolg bei der Erkennung der Maus verlassen? Vielleicht sogar durch Umfragen?
Dies muss in Chrome + Windows funktionieren, aber idealerweise in jedem modernen Browser.
aktualisieren:
dman2306 zu einigen Verfahren verknüpft ist zum Erfassen, wenn der Browser minimiert ist, einschließlich:
document.addEventListener("visibilitychange", function() {
doThings();
}, false);
Ich habe gerade überprüft, die in der neuesten Version von Chrome unter Windows 8.1 funktioniert.
, die genau die Probleme des Cursors verlässt über eine weitere Fensterrand austritt, oder über Alt + Tab .
Was ist der Grund dafür? –
Gut zu minimieren bedeutet nicht wirklich, dass die Maus übrig ist, aber trotzdem können Sie erkennen, minimieren Sie spezifisch mit dieser Technik http://stackoverflow.com/questions/10328665/how-to-detect-browser-minimize-and-maximize-state -in-javascript – dman2306
@ dman2306 Wenn die Maus auf Dinge in Excel klickt, würden Sie wirklich sagen, dass es noch im Browser ist? – Bort