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
更有效,杀死整个功能或什么?