chrome扩展的content.js中的全局变量

时间:2014-02-12 14:29:53

标签: javascript google-chrome-extension

有没有办法在一个 content.js 中包含一个全局变量?目前,这是我的代码,但它给了我'未定义'......

window.addEventListener("message", function(event) {
  // We only accept messages from ourselves
  if (event.source != window)
      return;

  if (event.data.type && (event.data.type == "FROM_PAGE")) {
    url = event.data.text;
    window.username = event.data.subject;
    window.password = event.data.end;
    alert(window.username);
    alert(window.password);
    chrome.extension.sendRequest({redirect: url});
  }
}, false);

function get_passwords() { 
    var node_list = document.getElementsByTagName('input');
    console.log(node_list);
    var textboxes = [];
    for (var i = 0; i < node_list.length; i++) {
        var node = node_list[i];
        console.log(node);
        if (node.getAttribute('type') == 'password') {
            textboxes.push(node);
        }
    } 
    textboxes[0].value = window.password;
}

1 个答案:

答案 0 :(得分:1)

对于chrome扩展内容脚本,请在

中使用此代码

您的内容脚本:

chrome.runtime.onMessage.addListener(function(msg,sender){

  //msg is the message, sender is where it came from

});

并在您的背景页面中:

chrome.tabs.sendMessage(tabToSendMessageTo.id, {
     message: {"greeting":"Hello World!"}
});

这是指向邮件传递的Google文档的链接。 Message Passing

相关问题