关于模态窗口

一.

1.模态窗口:打开后不可以操作父亲窗口
var returnValue=window.showModalDialog(url,Arguments,features);

2.非模态窗口:打开后可以操作父亲窗口
var returnValue=window.showModelessDialog(url,Arguments,features);

3.url:用来指定对话框要显示的网页的URL;

   Arguments:用来向对话框传递参数。参数类型不限。对话框通过window.dialogArguments来取得传递进来的参数;

   features:用来描述对话框的外观等信息

   {

      dialogHeight 对话框高度,不小于100px,IE4中dialogHeight 和 dialogWidth 默认的单位是em,而IE5中是               px,为方 便 其见,在定义modal方式的对话框时,用px做单位。
   dialogWidth: 对话框宽度。
   dialogLeft: 距离桌面左的距离。
   dialogTop: 离桌面上的距离。
   center: {yes | no | 1 | 0 }:窗口是否居中,默认yes,但仍可以指定高度和宽度。
   help: {yes | no | 1 | 0 }:是否显示帮助按钮,默认yes。
   resizable: {yes | no | 1 | 0 } [IE5+]:是否可被改变大小。默认no。
   status: {yes | no | 1 | 0 } [IE5+]:是否显示状态栏。默认为yes[ Modeless]或no  [Modal]。
       scroll:{ yes | no | 1 | 0 | on | off }:指明对话框是否显示滚动条。默认为yes。

    }



二.

1.子窗口获取父窗口操作对象或参数

var parentWin=window.dialogArguments;

可以在子窗口通过parentWin对象操作父窗口

a.为父窗口标签元素赋值:parentWin.document.getElementById("父窗口标签id").value = 子窗口中变量值

b.调用父窗口中的方法:parentWin.parentMethod();

2.防止在模态窗口中提交后新开一窗口    在页面的 <body>前加入<base target="_self">

3.window.open(url,Arguments,features); 打开的子窗口中可以通过var parentWin=window.opener;来获得父窗口的操作对象parentWin。



三.

操作完毕可以调用window.close()关闭子窗口。

你可能感兴趣的:(模态窗口)