前端小火龙 2023-03-27 15:13 采纳率: 93.3%
浏览 129
已结题

做谷歌浏览器插件的时候,怎么在background.js中优先执行其他.js文件里面函数呀?

做谷歌浏览器插件的时候,怎么在background.js中优先执行其他.js文件里面函数呀?

我想在background.js中调用同级目录下一个getUrl.js中的getFingerprint方法,我需要在background.js脚本执行之前就用里面的方法,我需要怎么做呀

  • 写回答

7条回答 默认 最新

  • 瞬间的未来式 2023-03-27 15:17
    关注

    该回答引用GPT:
    在 Chrome 扩展程序中,background.js 是在扩展程序加载时自动执行的,因此在其他 JavaScript 文件中定义的函数将在 background.js 加载后执行。

    为了在 background.js 加载前调用 getUrl.js 中的 getFingerprint 函数,你可以在 manifest.json 文件中使用 content_scripts 属性,指定一个 JavaScript 文件列表,这些文件将在页面加载时注入到页面中。

    以下是一个示例 manifest.json 文件:

    {
      "manifest_version": 2,
      "name": "My Extension",
      "version": "1.0",
      "background": {
        "scripts": ["background.js"]
      },
      "content_scripts": [
        {
          "matches": ["<all_urls>"],
          "js": ["getUrl.js"]
        }
      ]
    }
    

    这个 manifest.json 文件将在页面加载时将 getUrl.js 文件注入到所有 URL 中,并在其中定义的函数可以在 background.js 加载前使用。

    注意,你可能需要在 getUrl.js 文件中使用 export 关键字将 getFingerprint 函数导出,以便可以在 background.js 文件中调用它。

    评论

报告相同问题?

问题事件

  • 系统已结题 4月4日
  • 创建了问题 3月27日