JavaScript 可以工作,但是当网站重新加载时,有时 javascript 不起作用。当 javascript 不工作时,console.log工作,但querySelectorAll不起作用。我将获得的数据更改querySelectorAll为数组。当我这样做console.log时,会打印空数组。我不知道如何解决这个问题......manifest.json 的部分内容"content_scripts": [{ "run_at": "document_idle", "matches": ["https://www.something.com/*"],// this url is example "css": ["extensionStyle.css"], "js": ["Controller.js"] }],"permissions": ["declarativeContent", "storage", "activeTab", "tabs"]Controller.js 的部分内容// All the codes in my JavaScript work on this code. // When I do console.log it, the empty NodeList is printed.const articles = document.querySelectorAll("#container.article>.articles>article");我不认为这段代码是错误的,而且我知道它会一直运行。
2 回答
繁花不似锦
TA贡献1851条经验 获得超4个赞
我的代码在控制台中工作时遇到了类似的问题,但在刷新时却没有。对我来说,问题是我正在访问页面中的一个框架。但是我无意中注意到,在 Javascript 上下文中(找不到关于此的太多信息),如果您每次都在正确的上下文下运行代码,则不会出现此问题。如果这是您遇到的问题,但是当我尝试从控制台和扩展程序执行我的代码时很常见。
饮歌长啸
TA贡献1951条经验 获得超3个赞
尝试在网站完全加载时执行代码
window.onload = function() {
const articles = document.querySelectorAll(
"#container.article>.articles>article");
};
添加回答
举报
0/150
提交
取消