问题
i am writing a simple infinite counter in javascript when the page loads it starts counting
i would like to stop the counter when the mouse pointer is outside of the viewport
please help?
var i=0;
setInterval(function (){
i++;
document.getElementById("counterLoop").innerHTML=i;
},1000);
var viewportWidth = document.documentElement.clientWidth;
var viewportHeight = document.documentElement.clientHeight;
function getCursorXY(e) {
CurX = (window.Event) ? e.pageX : event.clientX + (document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft);
CurY = (window.Event) ? e.pageY : event.clientY + (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop);
}
how can i capture mouse move event ouside of the viewport width and heigth
回答1:
jQuery(document).mouseleave(function(){console.log('out')})
this will trigger when ever the mouse is not in your page as you want. just change the function to do what every you want .
and also you may use :
jQuery(document).mouseenter(function(){console.log('in')});
to trigger when the mouse enters the page to start your counter again.
来源:https://stackoverflow.com/questions/16028812/capture-event-when-the-mouse-pointer-outside-of-the-browser-viewport