Mouseenter和Mouseleave触发定时器开/关 [英] Mouseenter and Mouseleave to trigger timer on/off
本文介绍了Mouseenter和Mouseleave触发定时器开/关的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我该如何编码 mouseenter事件以触发计时器关闭和mouseleave事件以触发计时器开启?
如果达到计时器间隔,则网页将刷新.
If the timer interval is reached then webpage will refresh.
我已经尝试过但无法解决:
I've tried to do it but couldn't work it out:
<script>
$(document).ready(function() {
var timer;
function start() {
timer = setInterval(function(){refresh()}, 5000);
}
start();
$('body').mouseenter(function() {
clearTimeout(timer);
});
}).mouseleave(function(e) {
var pageX = e.pageX || e.clientX,
pageY = e.pageY || e.clientY;
if (pageX <= 0 || pageY <= 0) {
start();
}
else
clearTimeout(timer);
});
function refresh() {
window.location.reload(true);
});
</script>
(此代码部分摘自此处: https://stackoverflow.com/a/17714300/2593839)
推荐答案
此代码应该有效:
function refresh() {
window.location.reload(true);
}
var timer;
function start() {
timer = setTimeout(function(){refresh()}, 5000);
}
jQuery(document).ready(function() {
start();
jQuery('body').mouseenter(function() {
clearTimeout(timer);
}).mouseleave(function(e) {
var pageX = e.pageX || e.clientX,
pageY = e.pageY || e.clientY;
if(pageX <= 0 || pageY <= 0) {
start();
}else {
clearTimeout(timer);
}
});
});
这篇关于Mouseenter和Mouseleave触发定时器开/关的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文