首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >google chrome扩展开发

google chrome扩展开发
EN

Stack Overflow用户
提问于 2017-10-10 17:14:45
回答 1查看 74关注 0票数 0

我正在尝试在谷歌浏览器中开发我的第一个扩展,我正在遵循这个教程:Tutorial除了content.js中的2行代码之外,所有的东西都工作得很好。问题是"content.js“的内容不正确,我在chrome控制台的第2行中变得”未定义“。有人能帮我吗,让我知道为什么会发生这种情况?我和你分享content.js的内容是为了帮助我。

content.js内容:

代码语言:javascript
复制
var firstHref = $("a[href^='http']").eq(0).attr("href");
console.log(firstHref);

清单/json文件内容:

代码语言:javascript
复制
{
"manifest_version": 2,
"name": "My Cool Extension",
"version": "0.2",
"icons": { "128": "icon_128.png" },
"background": {
"scripts": ["background.js"]
},
"content_scripts": [
{
  "matches": [
    "<all_urls>"
  ],
  "js": ["jquery-2.1.3.min.js", "content.js"]
}
],
"browser_action": {
"default_icon": "icon.png"
},
"permissions": [
"tabs"
]
}
EN

回答 1

Stack Overflow用户

发布于 2017-10-10 17:28:45

我猜,您的内容脚本是在整个文档加载之前加载的,这就是它返回undefined的原因。为了确保您的内容脚本被正确注入,您应该在文件manifest.json示例中定义"run_at“:

代码语言:javascript
复制
"content_scripts": [
        {
            "matches": ["<all_urls>"],
            "js": ["content.js"],
            "run_at": "document_end",
            "all_frames": true
        }
    ],

有关更多详细信息,请查看Content Scripts parameters

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46662924

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档