【发布时间】:2015-04-27 16:18:58
【问题描述】:
我使用 jQuery 在视图中设置了一个计时器:
var timer, myDiv = $('#mydiv');
$(document).on('mousemove', function(ev) {
var _self = $(ev.target);
clearTimeout(timer);
if (_self.attr('id') === 'mydiv' || _self.parents('#mydiv').length) {
return;
}
if(!myDiv.hasClass('show')) {
myDiv.fadeIn();
}
timer = setTimeout(function() {
myDiv.fadeOut(1000, function() {
myDiv.removeClass('show');
});
}, 1960);
});
我需要在一个唯一的页面中使用这个计时器,以便用户一直在那里。
当用户离开页面并进入另一个视图时,是否可以使用 jQuery 或 JavaScript 来停止计时器?
这里是DEMO
【问题讨论】:
-
myDiv.stop()或许? -
@AcidShout 感谢您的建议,但应该为用户仍在页面内的所有时间启用计时器
-
setTimeout和clearTimeout都不是 jQuery 的东西。它们是 vanilla-js 的东西。
标签: javascript jquery ajax