所以我正在努力创建一个扩展,该扩展需要在我的网站触发的弹出窗口中工作......标准Javascript......
function openwin(){
window.open('http://stackoverflow.com','myname','height=100,width=100');
}
现在我需要在该窗口中加载我的扩展程序。假设扩展程序的目的只是提醒一条消息,当我加载该窗口时 background.js 应该触发并执行此操作,对吗?
所以我正在努力创建一个扩展,该扩展需要在我的网站触发的弹出窗口中工作......标准Javascript......
function openwin(){
window.open('http://stackoverflow.com','myname','height=100,width=100');
}
现在我需要在该窗口中加载我的扩展程序。假设扩展程序的目的只是提醒一条消息,当我加载该窗口时 background.js 应该触发并执行此操作,对吗?
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);
});
这是我查看 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);
});
});