Chrome浏览器showModalDialog兼容性及解决方案
chrome对showModalDialog方法是不兼容的,现在有年代久远的项目,是用的window.showModalDialog方式打开模态窗口,但现在提出有兼容性问题。
对此,我的解决方案是通过window.open的方式来解决。
1.showModalDialog方法的执行是阻塞的,而open不是。
showModalDialog好比是同步的,而open是异步,想要解决此问题,可以在子窗口中调用父窗口的方法把返回值传回去。showmodaldialog
2.showModalDialog发打开的窗口是模态,而open不是。
没有找到此问题的完美解决方案,我所想的是在父窗口定义一个常量hasOpenWindow,打开窗口时将其改为true,当期为true时,将焦点定位在刚才打开的窗口而不去新建,在父窗口的回掉函数中再将此常量改为false。showmodaldialog
以下是chromeWindowShowModalDialog.js
子窗口点击确定或者关闭时:
父窗口的回掉函数
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/ruanjian/article-52973-1.html
维持在中东的强大军事存在