window.showModalDialog
作用:
用来创建一个显示HTML内容的模态对话框
语法:
vReturnValue = window.showModalDialog(sURL [, vArguments] [, sFeatures])
参数说明:
sURL
必选参数,类型:字符串。用来指定对话框要显示的文档的URL。
vArguments
可选参数,类型:变体。用来向对话框传递参数。传递的参数类型不限,包括数组等。对于字符串类型,最大为4096个字符,超过自动截断。对话框通过window.dialogArguments来取得传递进来的参数。
sFeatures
可选参数,类型:字符串。用来描述对话框的外观等信息,可以使用以下的一个或几个,用分号“;”隔开。
1.dialogHeight :对话框高度。
2.dialogWidth: 对话框宽度。
3.dialogLeft: 离屏幕左的距离。
4.dialogTop: 离屏幕上的距离。
5.center: {yes | no | 1 | 0 }:窗口是否居中,默认yes,但仍可以指定高度和宽度。
6.help: {yes | no | 1 | 0 }:是否显示帮助按钮,默认yes。
7.resizable: {yes | no | 1 | 0 } :是否可被改变大小。默认no。
8.status: {yes | no | 1 | 0 } :是否显示状态栏。默认为yes[ Modeless]或no[Modal]。
9.scroll:{ yes | no | 1 | 0 | on | off }:指明对话框是否显示滚动条。默认为yes。
下面几个属性是用在HTA(HTML Application)中的,在一般的网页中一般不使用。
10.dialogHide:{ yes | no | 1 | 0 | on | off }:在打印或者打印预览时对话框是否隐藏。默认为no。
11.edge:{ sunken | raised }:指明对话框的边框样式。默认为raised。
12.unadorned:{ yes | no | 1 | 0 | on | off }:默认为no。
返回值vReturnValue:
类型:变体,可以是数组或对象等。在被打开页面中通过window.returnValue向打开窗口返回值。
兼容性:
IE4+, FireFox3+
示例:
1. 打开对话框页面parent.html:
<script>
function openModalDialog(){
// 构造参数对象
var obj = new Object();
obj.name = "51js";
var retValue = window.showModalDialog("modal.html",obj,"dialogWidth=200px;dialogHeight=100px");
alert("返回值returnName: " + retValue.returnName);
alert("返回值returnAge: " + retValue.returnAge);
}
</script>
<input type="button" value="open" onclick="openModalDialog();">
2. 被打开页面modal.html:
<script>
// 输出传递参数
var obj = window.dialogArguments
alert("您传递的参数为:" + obj.name);
function closeDialog(){
window.returnValue = {returnName:'returnName',returnAge:9};
window.close();
}
</script>
<input type="button" value="close" onclick="closeDialog();">
参考:
http://msdn.microsoft.com/en-us/library/ms536759(VS.85).aspx
https://developer.mozilla.org/en/DOM/window.showModalDialog
http://www.cnsdn.com.cn/blog/article.asp?id=2007
http://www.cnblogs.com/tohen/archive/2007/05/29/764189.html