窗口.chrome选项卡/窗口中的打开行为
window.open behaviour in chrome tabs/windows
我有一点javascript打算打开两个或更多的选项卡。这在FF和IE中工作得很好,但chrome在新窗口中打开第二个而不是选项卡。它不依赖于url,因为我已经尝试过两个相同的url。第一个在选项卡中打开,第二个在新窗口中打开。
下面是我的代码片段:for(var i=0 ; i<sites.length ;i++)
{
window.open(sites[i].Url);
}
Chrome只在用户生成操作时自动在新选项卡中打开URL,每个用户操作限制为一个选项卡。在任何其他情况下,URL将在一个新窗口中打开(顺便说一句,这是Chrome默认阻止的)。
窗口。Open 必须在回调中调用,该回调由用户操作(例如onclick)触发,以便页面在新选项卡中打开,而不是在窗口中打开。
在您的示例中,您尝试在用户操作时打开N个选项卡。但是只有第一个是在新选项卡中打开的(因为它是用户生成的操作)。在此之后,任何其他URL将在一个新窗口中打开。
类似的问题:强制window.open()在chrome中创建新的选项卡(见答案由maclema)
我遇到了这个问题JavaScript中的(function(){})()构造是什么?它解释了生命。我觉得这个可以再用一遍。请原谅我,我对javascript没有深入的了解。但我试了如下,它的工作。
var sites = [{"url" : "http://www.google.com"} , {"url" : "http://www.yahoo.com"} , {"url" : "http://www.msn.com"}];
console.log(sites);
for( var i=0 ; i < sites.length ;i++) {
(function(i) {
console.log(i);
window.open(sites[i].url , "_blank");
})(i);
}
它在chrome的新选项卡中打开url。
相关文章:
- Chrome应用程序调整窗口大小保持纵横比
- 可以从Chrome扩展修改窗口对象吗
- Chrome扩展:XHR后关闭窗口
- 全局窗口热键在最小化chrome窗口时调用js函数
- Chrome扩展-更改弹出窗口
- chrome.tabs.create的回调不会在弹出窗口中触发
- Chrome应用程序在全屏中创建新窗口-html元素不是全高的
- Chrome扩展:加载窗口后执行脚本
- 在Chrome中的适当选项卡/窗口中打开URL
- Chrome 开发工具:如何计算加载弹出窗口并将其显示在页面上所需的总时间
- 在Chrome扩展程序中,是否可以截屏并在弹出窗口中显示屏幕
- 检查窗口是否已从非父窗口(chrome 扩展程序)打开
- 当用户单击浏览器操作并出现弹出窗口(Chrome 扩展程序)时,如何执行操作
- Javascript :在屏幕中央打开弹出窗口(Chrome)
- 无法将鼠标坐标从content_script传递到弹出式窗口(Chrome 扩展程序)
- 弹出窗口下的当前窗口- Chrome
- 窗口.chrome选项卡/窗口中的打开行为
- 窗口.Chrome's在UI元素之间的innerHeight一致
- 最新的字体平滑技术的窗口Chrome和SEO
- 美元(窗口).Chrome扩展中的mouseup处理程序正在破坏Flash