【问题标题】:Google Chrome exstension chrome.tabs.onUpdated.addListener谷歌浏览器扩展 chrome.tabs.onUpdated.addListener
【发布时间】:2014-07-24 08:24:46
【问题描述】:

问题:未捕获的类型错误:无法读取未定义的属性“onUpdated”

谷歌浏览器扩展

我的代码:

ma​​in.js

我有一个函数 getCookie 和 setcookie

var _a = getCookie("a");

if (_a != "") {
/// do something
} else {


chrome.tabs.onUpdated.addListener(function(tabId , info , tab) {
if (info.status == "complete") {

   var _a = document.getElementsByName('id_loaded_page')[0].value;
       setCookie("_a", value, 1);
       console.log("_a: " +_a);


   }
});

}

【问题讨论】:

  • 这里没有问题;在堆栈溢出问题上,“这是我的代码(代码转储)它不起作用,帮助”格式的问题不受欢迎。编辑您的帖子以包含一个可回答的问题,并添加仅包含相关代码的 minimal example。另请阅读How to Ask 指南。

标签: javascript google-chrome google-chrome-extension tabs


【解决方案1】:

您正在从内容脚本调用chrome.tabs

design 表示,对于大多数 Chrome API,内容脚本是 not allowed access

您需要创建一个后台页面来访问chrome.tabs,但在您的特定情况下,您甚至不需要那个包装器:您在"document_end" 注入,这应该意味着所有静态DOM 都已经加载

如果您要查找的 DOM 节点是动态添加的,则在为选项卡触发“完成”时它可能不存在。你需要听DOM mutations

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-04-17
    • 2016-06-08
    • 2012-04-21
    • 1970-01-01
    • 2023-03-15
    相关资源
    最近更新 更多