不断执行setTimeout后的setInterval
setInterval after setTimeout is executed constantly
我有代码检查一些元素右上角的当前位置:
function checkContentPos(e) {
var positionLeft = 0,
checkTabPos = null,
pos;
e = $(e).filter('li');
alert($(e).attr('class'));
//alert($(e).attr('class'));
checkTabPos = setInterval(
function () {
ii++;
debug(ii);
pos = $(e).offset();
pos['left'] += parseInt($(e).css('width'));
positionLeft = pos.left;
debug(positionLeft);
}, 40);
function stopCheckTabPos() {
debug('stopCheckTabPos invoked')
clearInterval('checkTabPos');
}
setTimeout(stopCheckTabPos, 400);
return(positionLeft);
};
但是I看起来是循环到即时的。setTimeout之后,它仍然会被不断调用。
clearInterval('checkTabPos');
此处不要使用引号。这怎么可能呢?您需要传入由setInterval
返回的标识符,而不是一些任意字符串。
你调用clearInterval
与字符串'checkTabPos'
时,你应该使用它与变量
function stopCheckTabPos() {
debug('stopCheckTabPos invoked')
clearInterval(checkTabPos);
}
相关文章:
- 从客户端获取修改后的对象,并将其与服务器上的原始对象组合
- 创建新属性后的 JSON 空属性
- 动画完成后的TweenMax
- 在Rails中更新Div,而不更改更新请求后的视图
- 将处理后的图像上传到服务器
- RegEx JavaScript:数字后的符号提取
- 附加后的即时加载
- Don'我不明白为什么我的setInterval+jQuery;不起作用
- 加载后的页面与ajax表单提交不起作用
- 页面加载后的Ajax调用
- 页面更改后的剑道网格事件
- 使用jQuery只返回选中复选框后的第一个表单元格值
- 如何进行sequialize更新以返回更新后的对象
- 使用JAVASCRIPT转换货币.可以't通过我的函数设置转换后的输入文本字段的值
- Selenium驱动程序不反映单击()后的页面更改
- 变量dos'即使我可以返回更新后的值,也不会改变
- 如何在执行 AJAX 请求后停止 setInterval 运行,该请求将 DOM 中的该 setInterval 替换为
- JavaScript的setInterval的轮廓颜色闪烁不工作后,第一次改变颜色
- 未捕获的SyntaxError: missing)后的参数列表(setInterval)
- 不断执行setTimeout后的setInterval