JavaScript对话框类型与window.open参数详解

作者:代码拾荒

时间:2026-10-29

浏览:484

本文详解JavaScript中模式与无模式对话框的区别,重点解析window.open方法的各项参数配置,包括全屏、频道模式及窗口尺寸定位。同时介绍showModalDialog与showModelessDialog的使用场景及属性设置,帮助开发者合理控制网页弹窗行为。

文章目录

对话框类型与行为特征

对话框主要分为模式对话框和无模式对话框两类,核心区别在于关闭前是否允许用户操作同一应用程序的其他部分。例如,打开文件对话框属于典型的模式对话框,用户必须选择文件或取消操作后,才能继续在同一应用中执行其他任务。相比之下,查找和替换对话框属于无模式对话框,用户可以在其打开状态下同时进行其他工作。模式对话框会持续保持焦点,未关闭前无法切换至其他窗口;无模式对话框虽不始终保持焦点,但会始终显示在最前端。



网页窗口弹出技术全解


window.open参数配置示例

1. 创建全屏窗口


<html>


<body onload="window.open( http://www.3lian.com, example01 , fullscreen );">;


<b>www.3lian.com</b>


</body>


</html>



2. 创建被F11化后的窗口



<html>


<body onload="window.open( http://www.3lian.com, example02 , channelmode );">;


<b>www.3lian.com</b>


</body>


</html>



3. 创建带有收藏链接工具栏的窗口



<html>


<body onload="window.open( http://www.3lian.com, example03 , width=400,height=300,directories );">


<b>www.3lian.com</b>


</body>


</html>



showModalDialog系列函数详解

4. 网页对话框实现



<html>


<SCRIPT LANGUAGE="javascript">


<!--

showModalDialog( http://www.3lian.com, example04 , dialogWidth:400px;dialogHeight:300px;


dialogLeft:200px;dialogTop:150px;center:yes;help:yes;resizable:yes;status:yes )


//-->

</SCRIPT>


<b>www.3lian.com</b>


</body>


</html>



<html>


<SCRIPT LANGUAGE="javascript">


<!--

showModelessDialog( http://www.pconline.com.cn , example05 , dialogWidth:400px;dialogHeight:300px;


dialogLeft:200px;dialogTop:150px;center:yes;help:yes;resizable:yes;status:yes )


//-->

</SCRIPT>


<b>http://www.3lian.com</b>


</body>


</html>



通过showModalDialog()或showModelessDialog()调用网页对话框。两者的区别在于:showModalDialog()打开的是模式窗口,置于父窗口之上,必须关闭该窗口才能访问父窗口(建议谨慎使用,以免引起用户反感);showModelessDialog()打开的是无模式窗口,打开后无需关闭即可访问父窗口。



对话框属性参数说明

dialogHeight: iHeight 用于设置对话框窗口的高度。


dialogWidth: iWidth 用于设置对话框窗口的宽度。


dialogLeft: iXPos 用于设置对话框窗口相对于桌面左上角的left位置。


dialogTop: iYPos 用于设置对话框窗口相对于桌面左上角的top位置。


center: {yes | no | 1 | 0 } 指定是否将对话框在桌面上居中,默认值为“yes”。


help: {yes | no | 1 | 0 } 指定对话框窗口中是否显示上下文敏感的帮助图标,默认值为“yes”。


resizable: {yes | no | 1 | 0 } 指定对话框窗口大小是否可变,默认值为“no”。


status: {yes | no | 1 | 0 } 指定对话框窗口是否显示状态栏。对于非模式对话框,默认值为“yes”;对于模式对话框,默认值为“no”。


实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章