-1
所以我寫了一個重定向腳本,不幸的是它重定向每一幀,我是新的Java腳本,並想要這個簡單的擴展。Chrome擴展程序重定向每一幀
的manifest.json
{
"name": "Flannel is #Winning ",
"version": "0.2",
"description": "Checks URL and redirects as required.",
"background": {
"page":"bg.html"
},
"manifest_version": 2,
"content_scripts": [
{
"matches": ["http://*/*", "https://*/*"],
"js": ["content.js", "bg.js"]
}
],
"permissions": ["tabs","http://*/*", "https://*/*"]
}
bg.html
<html>
<script src="redirect.js"></script>
</html>
content.js
chrome.extension.sendRequest({redirect: newurl});
redirect.js
var url;
var newurl = "http://google.com/";
var newurl1 = "google.com/";
chrome.tabs.query({'active': true, 'lastFocusedWindow': true}, function (tabs) {
"use strict";
url = tabs[0].url;
});
function myFunction(url) {
"use strict";
if (url !== newurl || url !== newurl1) {
chrome.extension.onRequest.addListener(function (request, sender) {
chrome.tabs.update(sender.tab.id, {url: request.redirect});
});
}
}
chrome.tabs.getSelected(null, function (tab) {
"use strict";
myFunction(tab.url);
});
遺憾的是它刷新每一幀,我試圖創建一個檢查,如果當前的URL是一個函數,也許我們只是我的經驗不足的JavaScript,但我想挑戰自己通過寫我的第一個Chrome擴展,我很難過。任何指針或指向任何類型的文檔指向我的寫作方向將不勝感激。
更新
我試過它的這個和額外的變化中,也直線上升並沒有與此代碼在content.js腳本
chrome.tabs.query({'active': true, 'lastFocusedWindow': true}, function (tabs) {
"use strict";
url = tabs[0].url;
myFunction(url);
});
function myFunction(url){
if(url !== newurl){
chrome.extension.sendRequest({redirect: newurl});
}
注入重定向在所有}
從我所看到的,你是「注入」content.js - 'chrome.extension.sendRequest({redirect:newurl});'在每一個頁面中 –
@JaromandaX檢查更新並給出任何adivce我不知道如何注入頁面重定向只有一次。 –
對不起,丹,我不知道有關鉻擴展的幫助,我只做了一個評論(而不是答案),因爲從我對鉻擴展的瞭解知道的很少,看起來像是在每一個代碼中注入這段代碼頁。如果我對Chrome擴展更有經驗,我會發佈一個**答案**而不是評論 –