chrome扩展javascript中的循环导致页面无法加载



我只是想在脚本运行之前设置一个条件,所以我决定在代码之前运行这个循环,但网站不想加载它:

s =document.documentElement.innerText.split(",")[5]
while (s != " 2021 - June 25"){
s =document.documentElement.innerText.split(",")[5]
}

它检查是否有正确的字符串,以便运行完整的脚本。我之所以这样做,是因为网站有动态内容和加载2次。希望你能理解我。网站是:https://www.nike.com/events-registration/event?id=1618516799261

谢谢。

您可以使用以下技术:

  1. 设置一个间隔来检查图像DOM元素,并向其中添加一个事件侦听器
  2. 事件侦听器应该等待图像加载,然后您可以执行操作

我们选择图像是因为它们加载缓慢。试着找出任何图像的类/id(不应该是动态的(。

var checkInterval = setInterval(()=>{
if(document.querySelector('.slowImageClass')!=null){
document.querySelector('.slowImageClass').addEventListener('load', () => {
clearInterval(checkInterval ); //To stop the loop
//Your actions
});
}
},300  /**  time in milliseconds        **/);

Load事件仅适用于少数DOM元素类型。图像就是其中之一。

最新更新