如何在每次加载新页面时执行脚本?

时间:2012-06-04 07:02:24

标签: google-chrome google-chrome-extension

我正在为chrome设计一个工具栏。这是我在background.html中的代码:

<script>
function addToolbar() {
  return function(info, tab) {
      chrome.tabs.executeScript(tab.id, {file: "toolbar.js"})
  };
};

addToolbar(); 
</script>

在toolbar.js中有用于创建iframe的代码并将其附加到文档中。 问题是“addToolbar()”函数不会自动执行,因此工具栏不会出现。 我怎么能这样做?

编辑: 我的toolbar.js代码:

var iframe = document.createElement("iframe");
iframe.setAttribute("src", "http://www.example.com/mytoolbar.html");
iframe.style.cssText='position:fixed;width:100px;height:50px;bottom:0px;left:0px;';
(document.body||document.documentElement).appendChild(iframe);

1 个答案:

答案 0 :(得分:0)

您的函数addToolbar只返回另一个函数。它没有执行它。

如果要执行返回的函数,可以这样做:

addToolbar()();

或者您应该在addToolbar函数中执行您需要执行的操作:

function addToolbar(info, tab) {
  chrome.tabs.executeScript(tab.id, {file: "toolbar.js"})
};