gpt4 book ai didi

javascript - chrome.extension.getBackgroundPage() 函数示例

转载 作者:数据小太阳 更新时间:2023-10-29 05:12:44 25 4
gpt4 key购买 nike

我正在开发一个需要在后台运行的小型 Chrome 扩展程序。但是,我知道当我使用弹出窗口时这是不可能的。经过一些阅读,最好的选择似乎是创建 popup.js 以运行 background.js,使用 chrome.extension.getBackgroundPage()功能。

有人可以给我举个例子吗?

这是 list :

"browser_action": {
"permissions": ["background"],
"default_popup": "popup.html"},
"options_page": "options.html",
"background": {
"scripts": ["background.js"],
"persistent" : true
}

我在 popup.html 中包含了 popup.js 引用:

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

并在popup.js中创建了一个变量

var bkg = chrome.runtime.getBackgroundPage();

所以现在我需要一种方法来激活 background.js我是否需要从 popup.js 运行 background.js 中的相关函数,或者给出一个通用命令让 background.js 运行?

最佳答案

是的,您需要在弹出窗口中从后台调用函数。这是一个演示其工作原理的简单示例。

background.js

function backgroundFunction () {
return "hello from the background!"
}

popup.js

(function () {
var otherWindows = chrome.extension.getBackgroundPage();
console.log(otherWindows.backgroundFunction());
})();

当您检查 popup.js 时,您会看到“后台打招呼!”在您的控制台中。 GetBackgroundPage()只需返回背景页面的窗口对象,因为您可能知道所有变量都附加到此窗口对象,因此通过这种方式您将可以访问后台脚本中定义的函数。

有一个示例代码demonstrating this in chrome documentationIdle Simple Example并查看文件 history.js

关于javascript - chrome.extension.getBackgroundPage() 函数示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21146457/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com