【发布时间】:2015-12-13 21:11:03
【问题描述】:
这个问题和这个Clear all setIntervals有关
我像这样在每个函数中使用 setIntervals,
var allIntervals = [];
$(".elements").each(function() {
var myInterval = setInterval(function() {
// code that changes $(this)
});
allIntervals.push(myInterval);
});
然后我像这样清除所有间隔
jQuery.each(allIntervals, function(index) {
window.clearInterval(allIntervals[index]);
});
我现在意识到我想清除不再在 DOM 中的元素的间隔。
那么如何将 setIntervals 链接到 each() 元素,然后检查该元素是否仍在 DOM 中,如果没有,则清除与该元素关联的 Interval?
【问题讨论】:
-
为什么不清除所有区间然后根据当前dom重置?
-
allIntervals.push({ element: $(this), interval: setInterval(...) });-window.clearInterval(allIntervals[index].interval);
标签: javascript jquery html setinterval