javascript中window.open()与window.location.href()的区别

2016-05-17 15:03 阅读 11 次 评论关闭

Javascriptwindow.open()与window.location.href()有什么区别呢?简单地来说,

window.open("index.aspx",'top'); 只是表示打开这个页面,并不是打开并刷新index.aspx;

window.location.href="index.aspx"; 表示重新定向到新页面,同时刷新打开的这个页面;

有关JS打开窗口的使用方式和代码请参考这篇文章《Javascript打开新窗口的8种方式》。

要让window.open不在新窗口打开,怎么解决呢?继续往下看

windows.open("URL","窗口名称","窗口外观设定");

<A href="JavaScript:window.open('webpage.asp','_self')"> 点击这里 </A>

<a onclick="window.open('webpage.asp','_self');void 0" href="#"> 点击这里 </a>

于Window.open的参数小结(参书改编) 先看一个例子:

[javascipt:]window.open("Webpage.asp?",Derek,"height=100,width=100,status=yes,toolbar=yes, menubar=no,location=no");
此语句打开一个新窗口,页面为webpage.asp,参数为var,名字为Derek,高为100,宽为100,显示状态栏和工具条,不显示菜单和地址。

具体总结的各个属性参数如下:

window = object.open([URL ][, name ][, features ][, replace]]]])

URL:新窗口的URL地址
name:新窗口的名称,可以为空
featurse:属性控制字符串,在此控制窗口的各种属性,属性之间以逗号隔开。
fullscreen= { yes/no/1/0 } 是否全屏,默认no
channelmode= { yes/no/1/0 } 是否显示频道栏,默认no
toolbar= { yes/no/1/0 } 是否显示工具条,默认no
location= { yes/no/1/0 } 是否显示地址栏,默认no
directories = { yes/no/1/0 } 是否显示转向按钮,默认no
status= { yes/no/1/0 } 是否显示窗口状态条,默认no
menubar= { yes/no/1/0 } 是否显示菜单,默认no
scrollbars= { yes/no/1/0 } 是否显示滚动条,默认yes
resizable= { yes/no/1/0 } 是否窗口可调整大小,默认no
width=number 窗口宽度(像素单位)
height=number 窗口高度(像素单位)
top=number 窗口离屏幕顶部距离(像素单位)
left=number 窗口离屏幕左边距离(像素单位)

关于本题中,第二个参数的详解:
name可以为:

_blank 表示新开一个窗口,
_parent表示父框架窗口,
_self表示覆盖该窗口,
xxx表示覆盖名字为xxx的窗口
(每个窗口都可以给他命名)
不能为省略,可以为空!

用window.location.href的就只能在当前页面打开,不能打开新窗口的

<a href="javascript:window.location.href=webpage.asp"> 点击这里 </a>

<A href="javascript:window.location.href('webpage.asp')"> 点击这里 </A>

版权声明:本文著作权归原作者所有,欢迎分享本文,谢谢支持!
转载请注明:javascript中window.open()与window.location.href()的区别 | 猎微网

评论已关闭!