调用脚本以清除Chrome扩展程序中特定网站上的Cookie

时间:2019-03-26 16:54:15

标签: javascript cookies google-chrome-extension background

我正在尝试创建Chrome扩展程序,以检查网站是否包含特定元素,然后清除该网站的Cookie并刷新。

我创建了示例扩展程序来删除Cookie,但使用事件chrome.browserAction.onClicked.addListener在background.js中:

chrome.browserAction.onClicked.addListener(function(tab) {

    var url = tab.url;
    var matches = url.match(/^https?\:\/\/([^\/?#]+)(?:[\/?#]|$)/i);
    var d = matches && matches[1].replace('www.','');
    d = '.'+d;

    chrome.cookies.getAll({domain: d}, function (cookies) {

        for (var i=0; i<cookies.length; i++) {
            var url = "http" + (cookies[i].secure ? "s" : "") + "://" + cookies[i].domain + cookies[i].path;
            var cname = cookies[i].name;

            chrome.cookies.remove({
                "url": url,
                "name": cname
            });
        }

        chrome.tabs.reload();
    });
});

我从stackoverflow上的一篇帖子中获取了这段代码,并且我正在尝试根据需要对其进行转换。

在background.js的主要扩展中,我有:

chrome.tabs.onUpdated.addListener(function(tabId, changeInfo, tab) {
chrome.tabs.getSelected(null, function(tab){
   chrome.tabs.executeScript(null, {file: 'script.js'});
});
});

,然后在script.js中:

..some code...
var test = document.getElementById('u_0_c');
         if (test === null || test.innerText == "") {
            /*------------------------------*/
              HERE I WANT TO CLEAR COOKIES
            /*----------------------------*/
         }
..some code...

我无法在此处使用代码清除Cookie,因为出现以下错误: Cannot read property 'getSelected' of undefined和类似物。

感谢您的帮助;)

0 个答案:

没有答案