Ist es möglich zu wissen, ob die Maus einen bestimmten Teil des Fensters verlassen hat? Die Werte sind unten angegeben:Überprüfen, ob die Maus einen bestimmten Teil des Fensters verlassen hat
var cursorX;
var cursorY;
document.onmousemove = function(e){
cursorX = e.pageX;
cursorY = e.pageY;
}
document.addEventListener('mouseout', function(e) {
var dims = elem.getBoundingClientRect();
var top = window.scrollY + dims.top;
var left = dims.left;
var width = dims.width;
var bottom = dims.height;
if (what condition should be here) {
console.log('yes mouse has left that portion')
document.getElementById('div-in-the-end-of-body').style .display = 'none';
}
});
Zum Beispiel Werte von dimmt in Konsolenprotokoll sind ClientRect {top: 155.375, right: 621, bottom: 540.375, left: 313, width: 308…}
Hier ist visuelle, was ich zu erreichen bin versucht.
Edit: Das div am Ende des Körpers hat absolute Position und es schwebt auf den Bildern. Wenn ich bei diesen div-Bildern schwebe, beachte, dass die Maus es verlassen hat und das div versteckt. Dies ist der Grund, warum ich es so machen möchte.
Edit # 2: Hier ist die Lösung
elem.onmouseout=function(){
var dims = this.getBoundingClientRect();
var top = window.scrollY + dims.top;
var left = dims.left;
var width = dims.width;
var bottom = dims.height;
if(top > 10 || left > 10 || width > 10 || bottom > 10){
document.getElementById('div-in-the-end-of-body').style .display = 'none';
}
}
Sie können das Ereignis 'mouseout' direkt in diesem Block hinzufügen! Oder haben Sie einen anderen Grund, es im gesamten Dokument zu erkennen? – Rohit416
Sie könnten einfach einige Ereignisse auf die divs schreiben, auf Maus eingeben, auf Maus verlassen, erhalten Sie einfachere Codes, mit der Hilfe von Klasse Sie kamen auf die gleiche Wirkung auf alle divs –
mit jquery können Sie die Eltern childs und machen jede Änderung –