Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google chrome extension 关于chrome.tabs.executeScript(id、详细信息、回调)_Google Chrome Extension - Fatal编程技术网

Google chrome extension 关于chrome.tabs.executeScript(id、详细信息、回调)

Google chrome extension 关于chrome.tabs.executeScript(id、详细信息、回调),google-chrome-extension,Google Chrome Extension,这个函数有一个回调函数,类似于函数(任意结果的数组){…} 但我不知道结果意味着什么 比如说, chrome.tabs..executeScript(null, {code:"var x = 10"}, function(){}); 如何将x返回回调?脚本的结果是最后一个被计算的表达式。因此,在您的示例中,您可以使用: chrome.tabs.executeScript( null, {code:"var x = 10; x"}, function(results){ con

这个函数有一个回调函数,类似于
函数(任意结果的数组){…}

但我不知道结果意味着什么

比如说,

chrome.tabs..executeScript(null,
   {code:"var x = 10"},
   function(){});

如何将
x
返回回调?

脚本的结果是最后一个被计算的表达式。因此,在您的示例中,您可以使用:

chrome.tabs.executeScript( null, {code:"var x = 10; x"},
   function(results){ console.log(results); } );
这将把[10]记录到扩展的控制台


结果实际上是一个值数组,因为如果页面有多个帧,则可以指定脚本应注入其中的每一帧,并获得所有注入的结果。有关详细信息,请参见规范。如果您没有指定allFrames:true,那么结果将始终是一个单元素数组。

看看。我有这个
chrome.tabs.executeScript(null,{code:“var x=10;x”},函数(结果){alert(results);})但未定义为警报。您知道为什么会发生这种情况吗?@user1032613如果您的扩展没有权限在当前选项卡上执行脚本,就会发生这种情况。确保域包含在您的
manifest.json的
权限设置中,谢谢!我刚刚意识到,对manifest.json所做的修改只有在我重新安装扩展后才会生效。@user1032613您可以通过在中打开开发人员模式来重新加载扩展chrome://extensions. 或者按ctrl键,注意如果代码抛出错误,结果也将为null。