这是有效的:
function click(e) {
chrome.tabs.executeScript(null, {
code: 'var money = 1;'
}, function() {
chrome.tabs.executeScript(null, {file: 'peace.js'});
});
}
这不是(编辑代码以方便):
function click(e) {
var test = 'test';
chrome.tabs.executeScript(null, {
code: 'var money = ' + test + ';'
}, function() {
chrome.tabs.executeScript(null, {file: 'peace.js'});
});
}
如何正确传递? 谢谢!
答案 0 :(得分:1)
我认为你的问题是字符串值格式不正确。例如,
var money=test;
无法正常工作,因为执行test
时,脚本不知道function click(e) {
var test = 'test';
chrome.tabs.executeScript(null, {
code: 'var money = "' + test + '";'
}, function() {
chrome.tabs.executeScript(null, {file: 'peace.js'});
});
}
是什么。
如果你想传递一个字符串,它应该是
var money="test";
这样,执行的代码将是{{1}}
答案 1 :(得分:0)
找到了解决方法:
if (e.target.id == 'test1') {
chrome.tabs.executeScript(null, {
code: 'var money = 1'
}, function() {
chrome.tabs.executeScript(null, {file: 'peace.js'});
});
} else if (e.target.id == 'test2') {
chrome.tabs.executeScript(null, {
code: 'var money = 2'
}, function() {
chrome.tabs.executeScript(null, {file: 'test.js'});
});
}