Chrome扩展 - 如何使用按钮单击功能执行javascript文件

Chrome Extension - How to execute a javascript file with button click function?

本文关键字:功能 执行 javascript 文件 单击 按钮 扩展 何使用 Chrome      更新时间:2023-09-26

我读了很多关于这个的文件,但我无法弄清楚。我需要有关单击按钮时执行另一个 js 的帮助。test.js是我要执行的JavaScript文件。在该文件中,只有一个行代码,例如"alert("test.js executed!

在我的javascript文件中,我的点击函数就是这样。

$("#src").click(function(){
    alert("hi");
});

它运行良好,我需要执行我的"test.js"脚本。喜欢这个:

$("#src").click(function(){
    alert("hi");
    $.getScript("javascript/test.js",function(){
    })
    .success(function(){
        alert("success");
    })
    .error(function (){
        alert("Failed to execute script");
    });
});

但什么也没发生。也没有错误。如何通过单击执行该脚本?

这将属于eval的使用,因为这正是getScript所做的。

这是默认的Chrome扩展程序CSP所不允许的,这是有充分理由的。

你可能会争辩说,如果脚本包含在扩展中,则不存在安全风险,你可以重写 CSP 以允许这样做。不过很糟糕,很草率。

理想情况下,您希望简单地将带有<script>标记的test.js包含在页面中,并在其中调用某个函数。可能需要对文件进行一些修改,但这是正确的方法。

如果您每次都绝对需要执行整个test.js(尽管没有理由),请创建并附加一个<script>元素,并适当设置src。这不会违反云解决方案提供商。