javascript - 无法创建 Chrome 扩展程序

标签 javascript html json google-chrome google-chrome-extension

我已经成功地创建了一个 chrome 扩展程序,当按下它时,它会简单地说出 hello word。现在,当我尝试在按下警报时演示一个简单的按钮时,不起作用。我在想是否可能是因为我在内部使用了 javascript 并且它具有 html 扩展名。

在 chrome 中加载的我的文件夹中有 a) list .json b)lab.html c) 一个图标

实验室.html

<textarea id="s" rows="2" cols="4" name="p"></textarea></br>

<button onclick="button()">Submit</button>

<script>
function button()

{
   alert("alert");
}
</script>

list

{
    "name": "Your Extension Name",
    "description": "Your Extension Description", 
    "browser_action": {
        "default_icon": {
            "38": "icon.png"
            }, 
        "default_title": "Your Extension Popup Title", 
        "default_popup": "lab.html"
    }, 
    "manifest_version": 2,
    "update_url": "http://clients2.google.com/service/update2/crx",
    "content_security_policy": "script-src 'self' https://www.google.com; object-src 'self'",
    "version": "0.1"
}

最佳答案

由于 Content Security Policy,您无法执行内联 JavaScript . Chrome dev docs有更多详细信息。

基本上,您必须将 JavaScript 拉入不同的文件。

// script.js

function button()
{
   alert("alert");
}

document.addEventListener('DOMContentLoaded', function () {
  document.querySelector('button').addEventListener('click', button);
});

关于javascript - 无法创建 Chrome 扩展程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22259412/

相关文章:

arrays - 遍历 Angular Controller 中的嵌套 json 数组并获取唯一值

javascript显示数组中用户定义的元素

javascript - 如果文件已存在于 multer 中,如何防止文件保存

javascript - 如何使用 fancyBox 创建幻灯片?

javascript - jQuery 对话框不调整 div 中内容的大小

html - 为什么我的 HTML 签名在 Thunderbird 中显示正确,但在 Outlook 中显示错误?

javascript - 向打包的 Electron 应用程序提供命令行选项

javascript - 当在数字输入中输入小数时触发输入更改事件

Javascript一次替换多个字符

json - React restClient 管理员休息