问题描述
我正在构建一个 chrome 应用程序以在页面加载后单击一个元素:
manifest.json:
{
"manifest_version": 2,"name": "click chapter-btn","version": "1.0","browser_action":{ },"background": {
"scripts": ["background.js"]
},"permissions": [
"tabs","storage","https://www.youtube.com/*"
],"content_scripts": [
{
"matches": ["https://www.youtube.com/*"],"all_frames": true,"js": ["contentScript.js"]
}
]
}
contentscript.js:
chrome.runtime.onMessage.addListener(function(request,sender,sendResponse) {
if(document.readyState !== 'complete') {
window.addEventListener('load',afterWindowLoaded);
} else {
afterWindowLoaded();
}
function afterWindowLoaded(){
setTimeout(()=>{
var btn = document.querySelector('.ytp-chapter-title-prefix')
btn?.click()
},3000)
}
return true
});
background.js:
chrome.tabs.onUpdated.addListener(function(tabId,changeInfo,tab){
if(changeInfo && changeInfo.status == "complete"){
if(!tab.url.includes('https://www.youtube.com/watch')){
return
}
chrome.tabs.sendMessage(tabId,{data: tab},function(response) {});
}
});
我在网上搜索了一些解决方案,“向chrome.runtime.onmessage listener添加“return true””,但仍然显示此错误,不知道该怎么办。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)