我正在尝试阻止所有请求,存在的是本地存储列表。 在选项页面上,我们可以添加单词。如果加载的URL包含单词,则扩展名将取消该请求。 该脚本正在工作,直到阻止请求,但网页加载没有任何错误。
后台脚本正在运行,但页面已加载。我的代码有什么问题?
backgound.js:
var urls = ["*://*/*"];
Kezd.addListener(function(details) {
console.log(details.url);
chrome.storage.local.get('cimek', function(items) {
var urlek = [];
if (items.cimek) {
cims = items.cimek;
result = cims.split(/\r\n|\r|\n/);
for (i = 0; i <=result.length-1; i++ ){
urlek.push(result[i]);
}
}else {return {cancel: false};}
chrome.storage.local.get('ad', function(itemms) {
console.log("Storage rendben");
console.log(urls);
if (itemms.ad) {
if (itemms.ad == 0) {
console.log("Listener torolve...");
return {cancel: false};
}else{
if (details.url.indexOf(urlek) > -1){
console.log("Sikeres/Successful");
return {cancel: true};
}else{
console.log("Listener kihagyva...");
return {cancel: false};
}
//}
}
} else {return {cancel: false};}
});
});
},{urls},["blocking"]);
和 options.js :
var helyi = chrome.storage.local;
var rGomb = document.querySelector('button.reset');
var MentGomb = document.querySelector('button.submit');
var Text = document.querySelector('textarea');
betoltes(); //load()
MentGomb.addEventListener('click', Mentes);
rGomb.addEventListener('click', reset);
function Mentes() {
var cimek = Text.value;
var result = 1;
if (!cimek) {
uzenet('Hiba: Nincs megadva semmi');
return;
}
helyi.set({'cimek': cimek}, function() {
uzenet('Beállítások mentve');});
helyi.set({'ad': result}, function(){});
}
function betoltes() {
helyi.get('cimek', function(items) {
if (items.cimek) {
Text.value = items.cimek;
uzenet('Mentett adatok betöltve');
}
});
}
function reset() {
helyi.remove('cimek', function(items) {
uzenet('Reset végrehajtva');
});
var result = 0;
helyi.set({'ad': result}, function(){});
// Frissítés
Text.value = '';
}
function uzenet(msg) {
var uzenet = document.querySelector('.message');
uzenet.innerText = msg;
setTimeout(function() {
uzenet.innerText = '';
}, 3000);
}
谢谢!