Chrome如何在新窗口中打开弹出窗口而不是新标签(20170629_chrome 59.0.3071.115)

时间:2017-06-29 02:46:45

标签: asp.net google-chrome

编辑:对于我的问题,不确定,但我认为这个谷歌浏览器的更新不支持某些特定浏览器的许多选项。因此,当我们在window.open()的{​​{1}}中有它们时,它会省略所有height=h,width=w,left=x,top=y在新窗口中打开chrome链接而不是新标签

对于我的程序,现在我只保留这个,这解决了问题:

window.open(form_url, form_name, "width=w,height=h,left=x,top=y");
//our problem code below
//window.open(form_url, form_name, "width=w,height=h,left=x,top=y,resizable=yes,location=yes,scrollbars=yes");

//结束编辑=================

有人可以帮我配置Chrome,以便弹出窗口会在新窗口中打开,而不是新标签吗? (或者任何以编程方式为asp.net的方法,c#)

从2017/06/29开始,也许是Chrome版本59.0.3071.115的最新更新,Chrome中的所有弹出窗口都将在新标签页中打开,而不是在新窗口中打开。这改变了我们的网站行为(我们的网站使用主菜单和其他弹出窗体),这是非常意外的。

(在其他一些广告弹出窗口中测试,行为相同)。

(在Firefox中测试:在新窗口中打开弹出窗口确定所有这些网站,而不是新标签页。)

我已在此处阅读更改日志,但未提及此更改:specs param

我也搜索了谷歌,但没有运气,也许是因为我的谷歌技能,也许是因为这是Chrome的新变化所以谷歌无法找到有关它的问题?

感谢您的帮助。

2 个答案:

答案 0 :(得分:2)

在以编程方式打开新窗口而不是新选项卡时,您可以通过JQuery执行此操作:

<script type="text/javascript">
$(document).ready(fncOpenNewWindow);

function fncOpenNewWindow() {
        $('#testURL').unbind();
        $('#testURL').on('click', function () {
            window.open("", 'Window Name', "height=200,width=200,modal=yes,alwaysRaised=yes");
        });
    }
</script>

这是控件:

<a href="@Url.Action("Action", "Controller")" id="testURL">Click Me</a>

这是在Chrome上测试的。我还没有在其他浏览器上对此进行测试,但这应该适用于Chrome。

答案 1 :(得分:2)

我也有问题。我修改了toolbar=no或删除toolbar功能。

 window.open('http://google.com','x', 'height=600,width=600,left=10,top=10,resizable=yes,scrollbars=yes,toolbar=no,menubar=no,location=no,directories=no,status=no')