查看文章
 
[原]showModalDialog方法与open的区别
2008年10月13日 星期一 10:06 A.M.

在JS中打开新窗口一直在用open(),showModalDialog()几乎已被遗忘,showModalDialog和open一样也是3个参数,showModalDialog(文件地址,窗体对象,窗口属性),open(文件地址,打开方式,窗口属性)。

open打开的新窗口标题栏上可以看到 最小化 最大化按钮,而showModalDialog默认是没有的,只有一个小叉叉

open打开的新窗口可以鼠标可以点击父窗口的,showModalDialog只有把新打开的窗口关了鼠标的焦点才可触到父窗口(从某种程度上来说它就是个对话框)!

showModalDialog窗口属性的参数和open的窗口属性是有所区别的

open的窗口高度写法在此就不写了因为它和HTML代码的属性写法一样,下面看看showModalDialog的写法

var v = window.open('http://hi.baidu.com/yp2010','window','width=100,height=100,..') 打开一个新窗口并返回该窗口的句柄(open的返回值一般用的比较少,但是需要从父窗口操控子窗口时,open的返回值意义重大)

var v = showModalDialog('http://hi.baidu.com/yp2010',window,"dialogWidth:800px;dialogHeight:600px;center:yes;edge:raised ;scroll:yes;status:no;") 打开一个新窗口并将返回值保存到v变量(showModalDialog的返回值需要设置returnValue属性才能得到)。

window.dialogArguments 可调用父窗口的代码
window.returnValue 设置showModalDialog的返回值

注意第二个参数“window”,open用的是字符串(没有特殊要求可随便用字符串代替)。showModalDialog用的是对象,如果需要向父窗口传值或调用父窗口的方法请用window对象(暂不清楚是否还有其他对象可传递)。

dialogWidth:宽,dialogHeight:高,center:窗口位置,edge:边框样式,滚动条,状态栏minimize:yes;maximize:yes;最小化 最大化按钮。。

要打开一个类似对话框的窗口就可用showModalDialog方法。
注意:showModalDialo打开的页面中的链接及表单的打开方式全部是以新窗口打开,如果要在本窗口打开需在head标记中加上<base target="_self" />代码。

转载请注明出处:http://hi.baidu.com/yp2010/blog/item/a65576f0233386a9a40f521a.html


类别:html&js||添加到搜藏 |分享到i贴吧|浏览(2657)|评论 (0)
 
最近读者:
 
网友评论:
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
     

   
帮助中心 | 空间客服 | 投诉中心 | 空间协议
©2012 Baidu