以下是我的内容script.js和background.html以及错误
contentscript.js
chrome.extension.sendRequest({"type":""});
background.html
<script type="text/javascript" charset="utf-8">
chrome.extension.onRequest.addListener(
function(request, sender, sendResponse) {
chrome.tabs.getCurrent(function(tab){var urls = tab.url;console.log(urls);});
});
</script>
background.html控制台上的错误消息
background.html:7未捕获的TypeError:无法读取未定义的属性“url”
这应该是一个简单的改变,但我被卡住了。
答案 0 :(得分:5)
您无法调用get getCurrent
,因为您没有从标签上下文中调用它。文档说你也不能使用它。如果您的扩展程序创建了标签,则只能使用此选项。您想获取其标签ID以使用扩展名message passing。背景页面没有标签。
获取此脚本调用的选项卡。如果是,可能是未定义的 从非标签上下文调用(,例如:后台页面或弹出视图)。
如果您想获取当前标签ID,可以使用chrome.tabs.getSelected
来获取其网址和ID。
答案 1 :(得分:1)
chrome.extension.onRequest.addListener(function(request, sender, sendResponse) {
console.log(sender.tab.url);
});
答案 2 :(得分:1)
这可以尝试
0..* 0..*
| Data | <>―――――――> | Item |