gpt4 book ai didi

javascript - Chrome 与 Firefox 扩展

转载 作者:行者123 更新时间:2023-12-03 09:19:33 25 4
gpt4 key购买 nike

我为 Firefox 编写了一个简单的扩展。不幸的是,我的 friend 使用 Chrome,我不明白为什么相同的代码在 Chrome 中没有任何作用。 Firefox 的选项卡和 Chrome 的选项卡有什么区别?代码如下:

Manifest.json:

{
"manifest_version": 2,

"name": "customAddon",
"description": "Unsurprisingly, this addon does things.",
"version": "1",
"background": {
"persistent": true,
"scripts": ["customAddon.js"]
},
"permissions": [
"tabs",
"http://*.com/"
]
}

customAddon.js:

chrome.tabs.onUpdated.addListener(function(tabId , info) {
if (info.status == "complete") {
if (window.location.href == 'http://ninjakiwi.com/Games/Action/Play/SAS-Zombie-Assault-4.html') {
var elem = document.getElementById('secondary');
elem.innerHTML = '';
var removeLinks = (function() {
return function(passedElems){
for (i = 0; i < passedElems.length; i++) {
passedElems[i].setAttribute('onclick','return false;');
}}})();
removeLinks(document.getElementsByClassName('group'));
removeLinks(document.getElementsByClassName('nav'));
removeLinks(document.getElementsByClassName('local-skin'));
document.getElementsByClassName('header-bar')[0].setAttribute('style','padding-left:85px; padding-right:-85px;');}}
}
});

最佳答案

您的 customAddon.js 代码运行是一个单独的、不可见的页面,称为后台页面。

当然,它的 location.href 永远不会是那个 URL,它的元素也永远不会符合您的预期。

你真正需要的是 content script 。您可以设置过滤器来告诉它应该加载到哪个页面,然后它将通过访问页面的 DOM 来执行,这正是您所需要的。无需使用tabs API。

关于javascript - Chrome 与 Firefox 扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31877249/

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