javascript- window.open在safari和chrome身体?

时间:2012-03-13 14:40:35

标签: javascript asp.net dom

我在运行时添加以下javascript以打开新的浏览器窗口。我知道window.open在javascript中可用。但它不适用于safari和chrome。是否有任何其他技巧或挂钩技术来实现这一目标。

     string script= "window.open('http://www.w3schools.com','_blank','toolbar=yes,location=yes,directories=no,status=1,menubar=yes,scrollbars=yes,resizable=no,copyhistory=yes,left=20,top=20,width=600,height=550');";

ScriptManager.RegisterStartupScript(this, this.GetType(), "newWindowScript",  script, true);

由于

2 个答案:

答案 0 :(得分:0)

这是因为浏览器中的弹出窗口阻止程序。您可以使用Ajax Modal Popup窗口而不是Window.Open

http://www.asp.net/ajaxLibrary/AjaxControlToolkitSampleSite/ModalPopup/ModalPopup.aspx

另一种选择是Jquery弹出窗口 http://yensdesign.com/2008/09/how-to-create-a-stunning-and-smooth-popup-using-jquery/

如果您仍然需要使用Window.Open,请参阅此

Bypass popup blocker on window.open when JQuery event.preventDefault() is set

答案 1 :(得分:0)

window.open()肯定适用于Safari和Chrome,我今天就用它了! w3Schools网站上的演示在Chrome中运行

尝试将代码移动到标准的页内<script>块中(显然删除了.net内容)以测试并查看控制台中是否有任何错误。

可能是你传递给.open()的第三个参数的一个功能是破坏事物(比如复制历史功能 - 我之前从未见过它,并且它没有在可用选项中列出w3Schools网站)?我注意到Chrome倾向于忽略宽度并将其打开到它想要的任何大小......