1
var stuff = "Heeeey";
chrome.extension.getBackgroundPage().chrome.tabs.executeScript(null, {
file: 'sendMessage.js'
});;
如何将变量stuff
传递给文件sendMessage.js
?用executeScript传递变量
var stuff = "Heeeey";
chrome.extension.getBackgroundPage().chrome.tabs.executeScript(null, {
file: 'sendMessage.js'
});;
如何将变量stuff
传递给文件sendMessage.js
?用executeScript传递变量
没有办法将变量传递到执行的脚本中。我猜这是为了安全性和性能原因,因为这可能会导致内存泄漏。
你可以做的是传递一个值的变量。
有两种方式:
executeScript
注入变量值到页面脚本,但通过脚本为一个字符串,而不是文件名称。您可以执行executeScript
调用:一个用于值注入,另一个用于文件注入。
不知道我是否得到它的工作。我试图跟随#1。 'chrome.runtime.onMessage.addListener(function(message)if(message.type ==“pickLine”){ pickLineText = message.content; } });'是否在我的sendMessage.js中并且不管什么,pickLine似乎总是空白 – Dgameman1
@ ILovephp123这是一个异步消息,也许你发送它之前,监听器在页面上注册?还需要添加所有必需的权限,上次我尝试做类似的事情时,我花了相当长的时间来使其工作,这并不明显,他们如何在Chrome中执行此操作... – smnbbrv
sendMessage是否在上方或下方执行shell? – Dgameman1