Javascript 如何获取当前选项卡';谁是Chrome扩展的推荐人?
从我的chrome扩展中,我试图在用户 从另一个网站导航到Amazon.com,但我遇到了一些问题 我正在使用 来自chrome扩展的html页面?noredirect=1&lq=1和 从弹出的html,但仍然有问题 我的js在confirmation.js中:Javascript 如何获取当前选项卡';谁是Chrome扩展的推荐人?,javascript,google-chrome-extension,Javascript,Google Chrome Extension,从我的chrome扩展中,我试图在用户 从另一个网站导航到Amazon.com,但我遇到了一些问题 我正在使用 来自chrome扩展的html页面?noredirect=1&lq=1和 从弹出的html,但仍然有问题 我的js在confirmation.js中: chrome.tabs.onUpdated.addListener( function (tabId, changeInfo, tab) { if (changeInfo.status == 'loading') {
chrome.tabs.onUpdated.addListener( function (tabId, changeInfo, tab) {
if (changeInfo.status == 'loading') {
console.log(tab);
console.log(document);
//console.log(document.referrer);
}
});
当前,当输出popup.html的DOM时;不是用户所在选项卡的当前DOM。如何获取用户所在的当前选项卡的文档
log(tab)提供了用户所在的当前选项卡的信息,但是我在这里没有看到任何referer属性
我该如何解决这个问题,有什么建议吗
My manifest.json:
"permissions": [
"activeTab",
"tabs",
"storage",
"notifications"
],
"content_scripts": [
{
"matches": ["https://www.amazon.com/*"],
"js": ["confirmation.js"]
}
]
试试这个
chrome.tabs.onUpdated.addListener(function(tabId, changeInfo, tab) {
if(changeInfo.state === 'complete'){
chrome.tabs.executeScript(tabId, {
code: "document.referrer;"
},
function(result) {
// Here, you'll get the referrer
});
}
});
要访问网页DOM,您需要一个内容脚本。@wOxxOm这就是我试图使用清单中显示的内容脚本“confirmation.js”所做的。上面的代码片段来自此文件;还有什么我应该做的吗?啊,内容脚本不能使用chrome.tabs,所以你需要一个事件/背景页面脚本,不需要单独的内容脚本,只需要使用内容脚本文字代码:chrome.tabs.executeScript(tabId,{code:'document.referer',runAt:'document_start',frameId:0},([result])=>console.log(result))对不起,我有点困惑。我是否将chrome.tabs.executeScript放入内容脚本(根据上面的清单确认为confirmation.js)?但是它有chrome.tabs,我想你提到了内容脚本不能使用它?我提到的整个代码都进入了一个事件/背景页面脚本。@KapilBarad我尝试添加此代码,但当我添加console.log(result)时,我发现对于一个应该有推荐人的站点,我没有定义。