新版本火狐 ,Chrome不支持showModalDialog解决办法

Posted 微醺

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了新版本火狐 ,Chrome不支持showModalDialog解决办法相关的知识,希望对你有一定的参考价值。

  平常的网站中,有时我们会希望使用者按下按钮后开启一个保持在原窗口前方的子窗口,IE中,我们可以使用showModalDialog来达成,但是chrome早就不支持showModalDialog,最近我的火狐也不支持了,所以就去网上找了下解决办法,与大家共享:

  原来代码是这样:

function showDialog(url, w, h){
showModalDialog(url, self, ‘dialogWidth=‘+w+‘px;dialogHeight=‘+h+‘px‘);
}

 

  然后为了兼容新版本火狐和chrome,改为:

function showDialog(url, w, h){
    //新版本火狐谷歌不支持showModalDialog
    //showModalDialog(url, self, ‘dialogWidth=‘+w+‘px;dialogHeight=‘+h+‘px‘);
    window.open(url, self, ‘modal=yes,Width=‘+w+‘px,Height=‘+h+‘px‘);
}

  即:我们改用window.open()方法来实现这个功能,但是这个方法与showModalDialog()还是有一点小区别的,

  范例如下:

    window.open(‘openwin.html‘,‘newWin‘,‘modal=yes,width=200,height=200,resizable=no,scrollbars=no‘);

 

以上是关于新版本火狐 ,Chrome不支持showModalDialog解决办法的主要内容,如果未能解决你的问题,请参考以下文章

Firefox 还没放弃自己,准备继续跟 Chrome 一争高下

火狐不支持css的zoom属性,请问该如何兼容?请给出具体代码。

您的配置文件来自新版本谷歌浏览器,因此无法使用,某些功能可能无法使用,怎么办?

新版本chrome浏览器控制台怎么设置成独立的窗口

webbrowser用的是IE内核,可以修改成用火狐内核吗

chrome 浏览器无法打印的问题 润乾报表