技术解析

[求助] 关于油猴脚本加载的问题!
0
2021-08-09 19:58:05
idczone
加了 window.load 网页的子页面就卡住不继续加载了
不加 window.load 脚本就无法生效。(我猜测是子页面还没加载出来,脚本已经执行完了)

有啥子办法吗?

那种单页面的直接 window.onload=function(){}就可以。。 这种异步页面的应该怎么搞? #挠头
我怎么听不太懂?子页面是什么?怎么卡住?。。。

我外行,应该怎么形容呢。http://zq.win007.com/cn/subleague.aspx?sclassid=60
就是这种页面的 tbody 里的内容。 我用油猴 写入 window.onload=function(){}后 tbody 里的内容就永远在加载中

这应该是 js 动态生成的动态页面吧,怎么才能等这个 js 执行完了再执行我油猴里的脚本

最简单粗暴的方式,用 setTimeout 不断查询指定元素,有你需要的内容了,再执行具体脚本。

估计他的页面也是用的 window.onload, 所以你的 window.onload 把他的 onload 替换了。。。可以试试用 addEventListener



谢谢,我试一下, 又有问题了。



用三秒大法暂时对付了,老板们谁能贴个监听元素的代码呀。 因为动态页一刷新就没用了,暂时放了个调用函数的按钮。 如果能监听元素的话就好了,内容更新直接调用脚本

```
window.addEventListener('load', ()=>{console.log('ready')})
```
这样不就行了

监听元素可以用 MutationObserver


这是我用的代码:
window.onload = setTimeout(click_item,500);
function click_item(){
if(document.querySelector('.xxx')){
//你的代码
}else{
//继续等待
setTimeout(click_item,300) //300 毫秒
}
}

onload 肯定是不行的。 我也不知道咋回事 , 加了界面就刷不全, 现在就用延迟 3 秒。还行 比较稳定

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服