浅谈JavaScript显示弹出窗口的两种方案

1、方案一(谷歌浏览器不支持)

a)建立模式对话框显示指定的文档

var dialog=window.showModalDialog(url, arguments,features);  

url:必选参数,用来指定对话框要显示的文档的url。

arguments:可选参数,用来向对话框传递参数,传递的参数类型不限,包括数组等。对话框通过window.dialogArguments来取得传递进来的参数,常用window。

features:可选参数,用来描述对话框的外观信息,可以使用一个或多个,用分号隔开,dialogHeight设置对话框的高度,dialogLeft设置对话框左上角相对于桌面的横坐标,dialogTop设置对话框左上角相对于桌面的纵坐标,dialogWidth设置对话框的宽度,center指定对话框是否位于桌面正中(默认为yes),dialogHide指定当打印或打印预览时对话框是否隐藏,仅当对话框是由被信任的程序打开时此参数才可用(默认为no),edge指定对话框窗口边框样式为凹下还是凸起(默认为raised),help指定对话框是否显示上下文相关的帮助信息(默认为yes),resizable指定对话框是否可以被用户改变尺寸(默认为no),scroll指定对话框是否显示滚动条(默认为yes),status指定对话框是否显示状态条(不被信任的对话框默认为yes,被信任的对话框默认为no),unadorned指定对话框是否显示chrome样式边框,仅当对话框是由被信任的程序打开时此参数才可用(默认为no)。


b)建立无模式对话框显示指定的文档

var dialog=window.showModallessDialog(url, arguments,features);

模式对话框弹出后就始终保持输入焦点,除非对话框被关闭,否则用户无法切换窗口;在用户切换窗口时,无模式对话框依然会显示。


2、方案二

window.opener:返回的是创建当前窗口的那个窗口的引用。

如:点击a.html打开了b.html,要在b.html上输入一个值然后赋予a.html上的一个id为”txt”的text,可以写为window.opener.document.getElementById(“txt”).value=输入的值。

var dialog=window.open(url, name,features,replace);

url:可选参数,用来指定对话框要显示的文档的url,若不指定,则会显示about:blank的新窗口。

name:可选参数,指定打开的窗口的名字,_media表示在浏览器左边的媒体面板打开url,_blank表示在新窗口中打开url,_parent表示在当前框架的父框架中打开url,若无父框架则等价于_self,_search表示在浏览器左边的搜索面板打开url,_self表示在当前窗口中打开url,覆盖当前文档,_top表示在所有框架之外的最顶层窗口中打开url,若无框架则等价于_self。

features:可选参数,用来描述窗口的外观信息,可以使用一个或多个,用分号隔开,只有当新的浏览器窗口被建立时,此参数的设置才会发生作用,channelmode指定是否将窗口显示为频道模式(默认为no),directories指定是否显示链接按钮(默认为yes),fullscreen指定是否以全屏方式显示窗口(默认为no),height指定窗口的高度(最小值为100),width指定窗口的宽度(最小值为100),left指定窗口左上角相对于桌面的横坐标,top指定窗口左上角相对于桌面的纵坐标,location指定是否显示窗口的地址栏(默认为yes),menubar指定是否显示窗口的菜单栏(默认为yes),scrollbars指定是否显示窗口的滚动条(默认为yes),resizable指定是否允许用户改变窗口的尺寸(默认为yes),status指定是否显示窗口的状态栏(默认为yes),titlebar指定是否显示窗口的标题栏(默认为yes),除非调用程序是HTML应用程序或被信任的对话框,否则此参数将被忽略,toolbar指定是否显示窗口的工具条(默认为yes)。

replace:可选参数,false表示新打开的文档覆盖历史列表中的当前文档,true表示新打开的文档被简单的添加到历史列表的最后。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值