javascript - 您可以在页面操作弹出窗口中使用 javascript 吗?

标签 javascript google-chrome-extension

我正在尝试构建一个使用页面操作弹出功能的 chrome 扩展程序,但我的 javascript 似乎都不起作用。这是来源:

<!DOCTYPE html>
<html>
    <body>
        <input type="button" id="button1" value="first button">
        <input type="button" id="button2" value="second button">
        <script>
           console.log("do anything!!");
        </script>
    </body>
</html>

我在任何地方都看不到记录器语句。我似乎无法运行任何东西。这是弹出窗口应该如何工作吗?文档没有提到这些弹出窗口只是静态 HTML。

最佳答案

首先,Chrome 扩展不允许运行内联 Javascript 代码(也就是任何不包含在 .js 文件中但包含在 DOM 中的代码)。

引自the Content Security Policy page :

There is no mechanism for relaxing the restriction against executing inline JavaScript. In particular, setting a script policy that includes 'unsafe-inline' will have no effect.

因此,您需要将您的代码放入另一个文件中并导入它,如下所示:

<sctipt src="popup.js"></script>

其次,您在弹出窗口中运行的代码记录在其自己的控制台中,因此您必须右键单击您的扩展程序的图标,然后点击“检查弹出窗口”。然后,将出现一个开发人员工具窗口,您将能够浏览到“控制台”选项卡并查看日志。或者,您可以打开弹出窗口并右键单击其中的任意位置,然后选择“检查元素”,就像在任何普通页面上一样。

enter image description here

关于javascript - 您可以在页面操作弹出窗口中使用 javascript 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27888988/

相关文章:

javascript - 根据 Typescript 中输入对象的属性,使用键从函数返回对象

javascript - Jquery 选择子项中的所有子项

javascript - Angularjs promise 未及时解决

javascript - 使用 Javascript 垂直居中 div(可变高度)

javascript - chrome.notifications 消息未显示

javascript - Chrome 扩展 : Download

javascript - 打开主题和正文预填的电子邮件程序无法正常工作

javascript - CHROME ext/app - 单击即可下载图像

google-chrome-extension - 仅使用命令行界面在服务器上打包Chrome扩展程序

google-chrome-extension - 将文件从 Chrome 扩展程序保存到 Google Drive