clearInterval doesn't clearInterval
clearInterval doesn't clearInterval
本文关键字:clearInterval doesn 更新时间:2023-09-26
var timer;
function check_element_load(){
timer = window.setInterval(function(){
console.log("still working"); // keeps running forever
if(document.getElementById("comments")){
console.log("FOUND"); // this actually runs
document.getElementsByTagName("fb:comments")[0].setAttribute('order_by', 'social');
window.clearInterval(timer); // < not effective
}
}, 50);
}
check_element_load();
我试图把一个脚本放在顶部,以保持检查是否在浏览器中成功加载了一个特定的元素,它工作(控制台记录"FOUND"),但当我写另一个控制台日志,看看间隔是否仍在运行。它会,它永远不会停止并且clearInterval
被完全忽略
有什么我错过了吗?我还尝试使用包括settimeout
在内的所有其他解决方案,现在最接近我的解决方案是书面的,我只想让clearinterval
在条件返回true后生效。
是否有类似于clearinterval
的东西更有效,杀死整个功能或其他什么?
目前看来,您的代码在逻辑上是正确的,但是如果
document.getElementsByTagName("fb:comments")[0].setAttribute('order_by', 'social');
抛出错误,(当然)超时将永远不会被清除。你可以用SetTimeout
代替。
很可能调用getElementsByTagName("fb:comments")
返回一个空集合,给你一个"method setAttribute does not exist on Element undefined"类型错误
相关文章:
- setInterval和clearInterval javascript无法按需工作
- clearInterval 不起作用
- clearInterval在Javascript中不起作用
- clearInterval不起作用
- Jquery setInterval and clearInterval
- clearInterval / setInterval
- clearInterval停止setInterval纯粹基于时间工作
- 单击时clearInterval不起作用
- clearInterval.bind()不能作为传递到addEventListener的参数
- JavaScript - setInterval / setTimeout & clearInterval,无法
- 是否可以对超出范围的 setInterval 变量调用 clearInterval 方法
- 在初始化计时器之前,使用 clearInterval 清除计时器值
- 阻止用户手动调用clearInterval
- 使用clearInterval方法实现的是将区间变量引用设置为null,而不是
- Jquery Doesn't function
- clearInterval无法执行shuffle功能
- clearInterval不停止超过0(倒计时)
- set and clearInterval
- clearinterval幻灯片放映不起作用
- clearInterval doesn't clearInterval