我正在创建一个简单的Chrome扩展程序,如果我尝试访问“黑名单”上的网站,它将重定向我。
因此,我使用chrome.tabs.onUpdated,以便当我导航到使用AJAX请求的网站时,它将识别出该内容并运行我的脚本。
我的问题是页面在脚本完成之前开始部分加载并重定向我。
有什么方法可以在页面开始加载之前运行脚本?
background.js
chrome.tabs.onUpdated.addListener(function (tabId, changeInfo, tab) {
let blackList = [];
let currentURL = '';
let myURL = "https://keep.google.com";
chrome.storage.sync.get('websites', function(data) {
if (data !== undefined) {
blackList = data['websites'];
}
urlCheck();
});
// checks if the current URL is in the black list
function urlCheck() {
chrome.tabs.getSelected(null, function(tab) {
currentURL = tab.url.toLowerCase();
blackList.forEach(function(website) {
if (currentURL.includes(website)) {
chrome.tabs.query({currentWindow: true, active: true}, function (tab) {
chrome.tabs.update(tab.id, {url: myURL});
});
}
});
});
}
})