35

这个函数有一个回调,如function(array of any result) {...};

但我不知道结果是什么意思。

例如,

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

如何返回x回调?

4

1 回答 1

57

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

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

这会将[10]记录到扩展程序的控制台。

results实际上是一个值数组,因为如果页面有多个帧,您可以指定脚本应该注入其中的每个帧并获取所有注入的结果。请参阅executeScript的规范。如果您不指定allFrames: true,则结果将始终是单元素数组。

于 2012-11-01T08:18:22.360 回答