Answers:
window.location.href
是不是一种方法,它是一个属性,它会告诉你浏览器的当前URL位置。更改属性的值将重定向页面。
window.open()
是一种可以将URL传递给要在新窗口中打开的方法。例如:
window.location.href示例:
window.location.href = 'http://www.google.com'; //Will take you to Google.
window.open()示例:
window.open('http://www.google.com'); //This will open Google in a new window.
window.open()
可以传递其他参数。请参阅:window.open教程
window.location.href
是属性,而不是方法,但是Internet Explorer(至少10版)也允许您将其href
视为方法。我已经看到了它的工作原理,仅在IE10中使用了一页。这可能就是请求者调用href
方法的原因。请参阅IE与window.location.href不兼容的问题。但是,是的,最好将其href
用作属性,该属性可以在包括IE在内的任何浏览器中使用。
window.location.href
以相同的方式处理。毕竟,IE的新版本一般都越来越多的基于标准的,而不是更少。因此,如果IE10仍在违反标准,则较旧的版本也可能这样做。
window.open
将使用指定的URL打开一个新的浏览器。
window.location.href
会在调用代码的窗口中打开URL。
还要注意,这window.open()
是窗口对象本身的函数,而window.location
对象是暴露各种其他方法和属性的对象。
window.open是一种方法;您可以打开新窗口,并可以对其进行自定义。window.location.href只是当前窗口的一个属性。
已经有答案描述了关于window.location.href属性和window.open()方法。
我将按目标使用:
使用window.location.href。将href属性设置为另一个页面的href。
使用window.open()。根据您的目标传递参数。
使用window.location.href。获取window.location.href属性的值。您还可以从window.location对象获取特定的协议,主机名,哈希字符串。
有关更多信息,请参见位置对象。
window.open ()
将打开一个新窗口,而window.location.href
将在当前窗口中打开新的URL。
该window.open
会在新的浏览器标签页中打开链接
该window.location.href
会在当前标签页中打开链接(而不是你可以使用location
)
这是小提琴示例(在SO代码片段window.open中不起作用)