gpt4 book ai didi

javascript - 在注入(inject)文件上声明的函数无法从 chrome 扩展中的 background.js 识别

转载 作者:行者123 更新时间:2023-11-30 08:33:21 25 4
gpt4 key购买 nike

我正在尝试使用 https://github.com/povdocs/webvr-starter-kit创建一个 chrome PageAction 扩展。

在我的 manifest.json 文件中,我使用了 content_scripts 来加载 jquery.js 和另一个 inject.js.

在我的 inject.js 中,我有以下代码:

function initVR() {
VR.floor();
VR.box({ color: '#FFFFFF' }).moveTo(0, 1.4, 0).setScale(5,4,0);
var text = VR.text({
wrap: 4.1,
font: '24pt Roboto',
textAlign: 'left',
fillStyle : '#000000',
text : 'Hello world test'
})
.moveTo(.1, 1.4, 0);
}

在我的 background.js 文件上,我已经

chrome.pageAction.onClicked.addListener(function(tab) {
chrome.tabs.executeScript(tab.ib, {
file: "src/inject/vr.dev.js"
}, function(){
initVR(); //Calling the function I declared on inject.js
});

这里的想法是,当一个人点击 pageAction 按钮时,它会注入(inject) vr.dev.js 并初始化设置。

当我实现它时,我收到一条错误消息,提示 initVR() 未定义。我做错了什么?

enter image description here

最佳答案

您的后台脚本无权访问您的内容脚本。您应该改为从 background.js 向您的页面发送一条消息,并在那里有一个监听器来调用函数 initVR()

关于javascript - 在注入(inject)文件上声明的函数无法从 chrome 扩展中的 background.js 识别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34661895/

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