JavaScript中windows.open()、windows.close()方法详解


本文向大家介绍JavaScript中windows.open()、windows.close()方法详解,包括了JavaScript中windows.open()、windows.close()方法详解的使用技巧和注意事项,需要的朋友参考一下

windows.open()方法详解:

window.open(URL,name,features,replace)用于载入指定的URL到新的或已存在的窗口中,并返回代表新窗口的Window对象。它有4个可选的 参数:

URL:一个可选的字符串,声明了要在新窗口中显示的文档的 URL。如果省略了这个参数,或者它的值是空字符串,那么新窗口就不会显示任何文档。

name:一个可选的字符串,该字符串是一个由逗号分隔的特征列表,其中包括数字、字母和下划线,该字符声明了新窗口的名称。这个名称可以用作标记 <a> 和 <form> 的属性 target 的值。如果该参数指定了一个已经存在的窗口,那么open()方法就直接使用这个窗口。在这种情况下,指定窗口特征的features参数将被忽略。保留的名字:“_ blank”、“_ parent” 、“_ top”指新窗口显示位置。

features:(非标准的,建议忽略该参数)一个可选的字符串,声明了新窗口要显示的标准浏览器的特征。如果省略该参数,新窗口将具有所有标准特征。在以下窗口特征这个表格中,我们对该字符串的格式进行了详细的说明。

replace:一个可选的布尔值。规定了装载到窗口的 URL 是在窗口的浏览历史中创建一个新条目,还是替换浏览历史中的当前条目。支持的值:true - URL替换浏览历史中的当前条目;false - URL在浏览历史中创建新的条目。

新的顶层浏览器窗口由方法 Window.open() 创建。当调用该方法时,应把 open() 调用的返回值存储在一个变量中,然后使用那个变量来引用新窗口。新窗口的 opener 属性反过来引用了打开它的那个窗口。

请不要混淆方法 Window.open() 与方法 Document.open(),这两者的功能完全不同。为了使您的代码清楚明白,请使用 Window.open(),而不要使用 open()。

大部分浏览器都增加了弹出窗口过滤系统。通常open方法只有当用户手动单击按钮或者链接 的时候才会调用。JavaScript代码尝试在浏览器初始载入(或卸载)时开启一个弹出窗口时,通常 会失败。

窗口特征(Window Features)

channelmode=yes|no|1|0 是否使用剧院模式显示窗口。默认为 no。

directories=yes|no|1|0 是否添加目录按钮。默认为 yes。

fullscreen=yes|no|1|0 是否使用全屏模式显示浏览器。默认是 no。处于全屏模式的窗口必须同时处于剧院模式。

height=pixels 窗口文档显示区的高度。以像素计。

left=pixels 窗口的 x 坐标。以像素计。

location=yes|no|1|0 是否显示地址字段。默认是 yes。

menubar=yes|no|1|0 是否显示菜单栏。默认是 yes。

resizable=yes|no|1|0 窗口是否可调节尺寸。默认是 yes。

scrollbars=yes|no|1|0 是否显示滚动条。默认是 yes。

status=yes|no|1|0 是否添加状态栏。默认是 yes。

titlebar=yes|no|1|0 是否显示标题栏。默认是 yes。

toolbar=yes|no|1|0 是否显示浏览器的工具栏。默认是 yes。

top=pixels 窗口的 y 坐标。

width=pixels 窗口的文档显示区的宽度。以像素计。

window.close()方法:

如果已经创建了一个Window对象w,可以这样关闭窗口w.close();而在本窗口中则用window.close();

注意:必须显式地调用window.close()方法,避免同document.close()方法混淆;

大多数浏览器只允许脚本自动关闭由脚本创建的窗口,如果要关闭其他窗口,可以用一个对话框取得用户的确认或取消;window.close()不能关闭一个内嵌在窗口内的窗体;

即使一个窗口关闭了,代表它的Window对象仍然存在。已关闭的窗口会有个值为true的closed 属性,它的document会是null,它的方法通常也不会再工作。

以上所述是小编给大家介绍的JavaScript中windows.open()、windows.close()方法详解 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对呐喊教程网站的支持!

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#yiidian.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。