0

所以我正在努力创建一个扩展,该扩展需要在我的网站触发的弹出窗口中工作......标准Javascript......

function openwin(){
    window.open('http://stackoverflow.com','myname','height=100,width=100');
}

现在我需要在该窗口中加载我的扩展程序。假设扩展程序的目的只是提醒一条消息,当我加载该窗口时 background.js 应该触发并执行此操作,对吗?

4

2 回答 2

2

chrome.windows.create(object createData, function callback)

创建(打开)具有任何可选大小、位置或默认 URL 的新浏览器。

来自:http ://code.google.com/chrome/extensions/windows.html#method-create

试试这个例子:

var props = {
    url: "http://www.stackoverflow.com",
    height: "100",
    width: "100",
    type: "popup"
}

chrome.windows.create(props, function(windowObj){
    console.log("Here's the window object.");
    console.dir(windowObj);
});
于 2012-07-28T08:21:47.327 回答
0

这是我查看 API 后的答案。正如我所说,它检查正在创建的每个新窗口并检查该窗口的参数。这是代码,可以添加到您的扩展程序的 background.js 文件中:

chrome.windows.onCreated.addListener(function(win){
    chrome.windows.get(win.id,{populate:true},function(tabwin){
        setTimeout(function(){
            chrome.tabs.executeScript(tabwin.tabs[0].id,{code:"alert(JSON.stringify(window));",runAt:'document_idle'});
        },500);
    });
});
于 2012-07-28T09:16:05.710 回答