作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
mouseout事件发生时如何停止time()?
`<div id="j" style="height:50px; width:50px; background-color:red;">Hello</div`>
$("#j").mouseenter(function(){
var count = 3;
var counterIncrement=1;
setInterval(timer, 1000);
function timer() {
count = count+counterIncrement;
if (count == 3 ) {
counterIncrement = +counterIncrement;
}
console.log(count);
}
});
我想在 mouseout 再次发生时重置 timer() 函数 mousein 然后开始计数 =3
最佳答案
您在两个不同的函数(事件句柄)中使用相同的时间间隔,因此您必须声明一个全局变量。在脚本的最开始,声明:
var interval;
在一个事件句柄中将间隔分配给此变量:
interval = setInterval(.....);
并在需要时在另一个句柄中清除它:
clearInterval(interval);
就是这样。因为变量是全局声明的,所以它会在两个函数范围内被识别。它有效,因为区间对象是通过引用传递的。
关于javascript - 如何在javascript中停止函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26776474/
我是一名优秀的程序员,十分优秀!