如何为Firefox编写对话框

在设计blog操作过程时,您计划添加一个弹出对话框,将页面添加到页面并修改页面。

但是实际操作中有一个问题。IE的对话框技术不支持Firefox。我们如何支持IE和Firefox的对话框

幸运的是,在TinyMCE研究昨天,有火狐浏览器对话框的技术支持可以借鉴。

我写了打开对话框的方法:
功能popupdialog(URL,宽度,高度){
/ / showx = event.screenx - event.offsetx - 4 - 10; / /Δx +;这段代码只适用于IE,没有
/ /艳丽的= event.screeny - event.offsety±168; / / deltay;这段代码只适用于IE,没有

var x = parseInt(screen.width / 2)-(宽/ 2);
var y = parseInt(screen.height / 2)-(身高 / 2);
无功ismsie =(navigator.appname = =微软Internet Explorer); / / mobiledevicemodel

如果(ismsie){
retval = window.showmodaldialog(URL,窗口,dialogwidth:+宽+,PX,dialogheight:高度+,+,PX,dialogleft:,PX
{人}
VAR赢= window.open(url,mcepopup
eval('try { win.resizeto(宽度,高度);} { } catch(e));
Win.focus();
}
}

在打开对话框中,我使用了上下边框的页面,因为在伊江,对话框不能提交,但它可以在被分成帧后提交。
在提交按钮上,添加此部分代码:

功能doreload(){
无功ismsie =(navigator.appname = =微软Internet Explorer);
如果(ismsie){
parent.dialogarguments.location.reload();
其他{ }
parent.opener.document.location.reload();
}
Top.close();
}

两个浏览器打开对话框的方式不同。
即:window.showmodaldialog(URL,窗口,dialogwidth:300px;dialogheight:300px;dialogleft:200px;dialogtop:200px;状态:无;目录:是的;滚动条:无;大小=没有;);
火狐:window.open(url,mcepopup

窗户关上的时候:
即:parent.dialogarguments.location.reload();
火狐:parent.opener.document.location.reload();

还有一点很重要,attention.firefox似乎并不支持window.close()的对话框;
因此,关窗,最后使用的是top.close();的IE和Firefox都支持。