gpt4 book ai didi

google-chrome - chrome.tabs.onUpdated.addListener的完整状态为每个页面两次或更多次

转载 作者:行者123 更新时间:2023-12-03 19:02:53 29 4
gpt4 key购买 nike

这是我的脚本,它使用onUpdated.addListener来检查每个URL:

chrome.tabs.onUpdated.addListener(function (tabId, changeInfo, tab) {          
alert(changeInfo.status);
if (changeInfo.status == 'complete') {
if (tab.url.indexOf("in.yahoo.mail") !== -1) {
alert(tab.url);
chrome.tabs.update(tabId, { url: "https://accounts.google.com/ServiceLogin" });
//injectToTab(tab);
}
}
});

这是 list 代码:
 {
"name": "LeoPlugin For Test",
"version": "1.6",
"manifest_version": 2,
"content_security_policy": "script-src 'self'; object-src 'self'",
"description": "Extension to Automate.",
"background": {
"scripts": ["js/eventPage.js"],
"persistent": false
},
"content_scripts": [
{
"matches": ["http://*/*"],
"js": ["js/eventPage.js"]
}
],
"icons":{"48":"images/bob48.png", "128":"images/bob128.png"}, //Define any icon sizes and the files that you want to use with them. 48/128 etc.
"browser_action": {
"default_icon": "images/bob.png", // What icon do you want to display on the chrome toolbar
"default_popup": "testwatch.html" // The page to popup when button clicked.
},
"permissions": [
"tabs", "http://*/*","https://*/*" // Cross Site Access Requests
]

}

以上代码中缺少的任何东西都可以防止多次获得“完成”状态。这也是我的HTML代码:
<html>
<head>
<title>Leo Chrome Extension</title>

<link href="css/main.css" rel="stylesheet" type="text/css" />
<link href="css/fonts.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="jquery/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="jquery/jquery-ui-1.8.2.custom.min.js"></script>
<!--<script type="text/javascript" src="js/Pluginjshelper.js"></script>-->
</head>
<body class="inner_bg">
<div class="grey-panel">
<div>
<div class="user-pic">
<img src="Images/leo-logo.png" width="70" height="50" />
</div>
<h3>
Leo Extension</h3><input name="ok" type="button" class="btn" id = "button123" value="OK"/> <!--onclick = "getCPRepGraph()" -->
<input name="chkEnable" id="chkPluginEnable" type="checkbox" value="" class="check" /><span class="lbl">Enable</span>
</div>
<div class="clear">
</div>
<div>
<h4>
<span class="blue">Plugin </span>Credentials</h4>
<ul class="addpage-form2">
<li>
<label class="addpage-label">
User Name :</label><input name="txtUserName" id="txtUserName" type="text" class="addpage-input2" />
</li>
<li>
<label class="addpage-label">
Password :</label><input name="txtPassword" id="txtPassword" type="password" class="addpage-input2" />
</li>
</ul>
<div class="clear">
</div>
</div>
<!--BASIC INFO panel End-->
<div class="clear">
</div>
</div>
</body>
</html>

在此先感谢您的时间。

最佳答案

这是Chrome Issue 162543中的一个已知错误,已在2012-12-05被标记为已修复。

解决方法:(不再需要)

Make Event Page to Background Page通过更改以下代码

"background": {
"scripts": ["js/eventPage.js"],
"persistent": false
},


"background": {
"scripts": ["js/eventPage.js"],
"persistent": true
},

并通过使用后台页面进行开发直至修复程序得以交付。

其他要点:

在查看您的manifest.json之后,为什么
"background": {
"scripts": ["js/eventPage.js"],
"persistent": false
},
"content_scripts": [
{
"matches": ["http://*/*"],
"js": ["js/eventPage.js"]
}
],
js/eventPage.js是内容脚本以及background\event脚本;拥有 chrome.tabs.onUpdated.addListener()的代码根本无法在 content scripts中使用,请消除此代码

如果您需要更多信息,请与我们联系。

关于google-chrome - chrome.tabs.onUpdated.addListener的完整状态为每个页面两次或更多次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13641658/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com