chrome.pageAction.setIcon 无法可靠地工作

chrome.pageAction.setIcon does not work reliably

本文关键字:工作 pageAction setIcon chrome      更新时间:2023-09-26

这段代码有什么问题?当我在调试模式下尝试它时,它每次都可以更改图标和标题,但是当我在没有调试模式的情况下尝试时,它有时可能无法正常工作(特别是如果我使用鼠标单击转到网站而不是使用多功能框)。我相信过滤器可能会导致问题,但我还找不到解决方案。

chrome.webRequest.onCompleted.addListener(
        function (details) 
        {
            var url = (new RegExp('^https://([^/@]+@)?([^/@]+)/(.*)').exec(details.url));
            var domain = url[2];
            if(domainCheck(domain)){
                    chrome.pageAction.setIcon({tabId: details.tabId, path: 'https_enforced.png'});
                    chrome.pageAction.setTitle({tabId: details.tabId, title: 'Secure connections enforced'});
            }
        }, { urls: ["https://*/*"]} 
    );

提前感谢!

我解决了这个问题,

chrome.webRequest.onCompleted.addListener(
function (details) 
{
    var url = (new RegExp('^https://([^/@]+@)?([^/@]+)/(.*)').exec(details.url));
    var domain = url[2];
    if(domainCheck(domain)){
            console.log("yesil")
            setTimeout(function(){chrome.pageAction.setIcon({tabId: details.tabId, path: 'https_enforced.png'})},100);
            setTimeout(function(){chrome.pageAction.setTitle({tabId: details.tabId, title: 'Secure connections enforced'})},100);
    }
}, { urls: ["https://*/*"]} 

);