获取executeScript中变量集的值
Obtaining the value of a variable set in executeScript
在创建Google Chrome扩展时,我有一些代码必须保留在一个单独的javascript文件中:
separate.js
-----------
var x = "some dynamic value";
var y = "another dynamic value";
return x;
我想从这个代码中获得x的值,并将其包含在我的后台页面中:
background.html
-----------
<!DOCTYPE html>
<html>
<head><script src="code.js"></script></head>
</html>
_
code.js
-----------
chrome.tabs.executeScript(null, {file:"separate.js"}, function() {});
如何在separate.js(比如y)中检索变量集?有没有一种方法可以使用executeScript()来获取脚本的返回值?
在您的code.js
(由您的扩展注入)上,使用chrome.extension.sendRequest
:
var y = "variable to send";
function f_callback(response) {
alert(response);
}
chrome.extension.sendRequest({y: y}, f_callback); //<-- Trigger
在separate.js
(在background.html
),使用chrome.extension.onRequest
:
function listener(o_request, o_sender, f_callback) {
// This function is triggered by the function, see above
alert(o_request.y); //<---y
f_callback("Done something"); //<-- Calls callback. Can only be done once!
}
chrome.extension.onRequest.addListener(listener);
相关文章:
- 将函数的上下文应用于javascript变量
- 无法导出函数expressjs/requestjs中的变量
- 函数参数中的数据与指定变量之间的任何性能差异
- 将PHP变量传递给jQuery时遇到问题
- 如何通过ajax刷新JSF填充的javascript变量
- 参数变量出现ngTable指令问题
- 通过javascript重定向html传递php变量
- 将jsp文件下拉列表中的选定项分配给一个java变量(比如String selection)
- 全局变量和全局对象的属性之间有什么区别吗
- 如何在Bootstrap Modal中为动态点击生成的变量设置jade属性
- 值对象在某个变量发生更改后发生更改
- Javascript变量赋值|
- AngularJS-在JSON选择器中使用变量名
- Javascript计数器变量未显示正确的值
- 使用 executeScript 传递变量
- “Chrome Apps” webview.executeScript 访问访客全局变量
- 获取executeScript中变量集的值
- ExecuteScript没有'使用变量时不适用于localStorage
- 在chrome.tabs.executeScript中使用background.js变量
- 从executescript函数访问变量