js里清空积累的setInterval
比如我有几个div,上面全部有onmouseover就触发同一种setInterval,但是我想触发一个时,其余没有完成(没有达到clearInterval的条件)的se...
比如我有几个div,上面全部有onmouseover就触发同一种setInterval,但是我想触发一个时,其余没有完成(没有达到clearInterval的条件)的setInterval们立即停止。怎么用原生js解决。
展开
2个回答
2015-10-13
展开全部
var t;//同一种setInterval,一个实例
var divs = document.querySelectorAll("div");
for(var i = 0; i < divs.length; i++){
divs[i].onmouseover = function(){
t = setInterval(function(){
console.log("running...");
},1000);
}
divs[i].onmouseout = function(){
t && clearInterval(t);
t = null;
}
}
追问
经过验证您的回答不正确。因为鼠标从一个div移到另一个div前,必然触发mouseout,也就是说不存在setinterval的积累,因为永远只是产生和停止同一个setinterval。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询