最近两天一直在弄这个window.open()和window.close()的东东,快把我给搞疯掉了。现在记录下来,也帮助受此困扰的朋友度过难关
1、window.open()此方法有四个参数
window.open(sUrl,sName,sFeatures,bReplace)
sUrl:要打开的页面的路径
sName:要打开的页面的名称,如果已经存在,将会覆盖原来的页面,
也可以用_self,_parent,_blank,_top几个参数。
blank : 在新窗口中打开sUrl。
_parent : 在当前框架的父框架内打开。假如当前框架无父框架,此参数值等同于_self。
_search : IE5.0在浏览器左边的搜索面板内打开 sUrl。
_self : sUrl在当前窗口中打开,覆盖当前文档。
_top : 在所有框架之外的最顶层窗口中打开sUrl。假如当前窗口无框架结构,此参数值等同于_self。
sFeatures:要打开的页面的样式
channelmode = { yes | no | 1 | 0 } 指定是否将窗口显示为频道模式。默认值为no 。
directories = { yes | no | 1 | 0 } 指定是否显示「链接」按钮。默认值为yes 。
fullscreen = { yes | no | 1 | 0 } 指定是否以全屏方式显示窗口。默认值为no 。
要小心使用全屏模式,因为这种模式会隐藏浏览器窗口的标题栏和菜单。如果没有在页面内提供关闭窗口的功能,
用户可以使用ALT+F4快捷键关闭窗口。
height = number设置窗口的高度。最小值为100。
left = number设置窗口左上角相对于桌面的横坐标。单位为像素(px)。
width = number设置窗口的宽度。最小值为100。
top = number设置窗口左上角相对于桌面的纵坐标。单位为像素(px)。
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 }设置是否显示浏览器窗口的标题栏。除非调用程序是HTML应用程式(HTA)或被信任的对话框,
否则此参数将被忽略。默认值为yes。
toolbar = { yes | no | 1 | 0 }设置是否显示浏览器窗口的工具条。默认值为yes。
bRepleace(布尔值):false : 新打开的文档覆盖历史列表里的当前文档。true :文新打开的文档被简单的添加到历史列表的最后。
加入有连个页面a.html,b.html,在a页面打开b页面的方法。
window.open('b.html');
window.open('b.html','windowB');
window.open('b.html','_self');
window.open('b.html','_parent',features)
window.open('b.html','windowNameB',features,null);
还可以这样打开一个页面:window.location.href=b.html;
2、window.close();
window.close()只能对新建的窗口有效。如果在主浏览器中调用window.close()方法将得到一条提示信息:提示该脚本试图关闭窗口,询问是否真的要关闭窗口(在IE下),
在FF和Chrome下没有反应。
3、新窗口还有对打开它的窗口的引用,存放在opener属性中。
只有在新窗口的最高层才有opener属性。