window.location.href和<a href><a>的区别是什么?

问题描述 投票:0回答:2

我刚刚读了一些关于window.location属性和方法的概念,我知道了

1. window.location.href = "http://google.com"
2. window.location.assign("http://google.com")
3. window.location.replace("http://google.com")

都是可以将我们的页面重定向到目标url,唯一不同的是window.location.replace不记录历史,所以我们不能直接回到之前的页面。

现在我只是想知道。有什么区别? window.location.href<a href="http://google.com">Google</a>జజజజజజజజజజజజజజజజజజజజజజజజజజజజజజజజజజజజజజజ <a> 标签也记录了历史。那我们分别在什么情况下使用它们呢?

html href window.location
2个回答
0
投票

我认为主要的区别在于背后发生了什么,但从表面上看,它们给出的效果几乎是一样的。

window.location.href 是只能由JavaScript触发,或者在JS上下文中触发。而一个 <a> 标签在HTML中定义了超链接。这实际上取决于你想如何触发这个新页面。你可以有一个用户可以点击的超链接,或者你可以通过一些JS函数来触发页面加载,这些函数是由某些动作触发的。

说得更具体一些。a 标签在网页中很常见,因为浏览器了解它,可以应用CSS样式使它看起来更漂亮。至于 window.location.href它没有UI方面的功能,它只是一行JS代码,你可以触发(1)获取当前网页的URL,或者(2)给它设置一个值,将用户重定向到其他URL。


0
投票

区别在于它们可能被使用的方式(duh,请听我说。)

设置 window.location.href 是一种程序化设置URL的方式。例如: window.location.href = 'https://www.google.com' 会将用户导航到Google的搜索页面。你的用户没有办法利用这些知识,除非他们打开开发者控制台。

使用一个锚标签 <a href="https://www.google.com">Google</a> 将显示一个超链接,用户可以点击,将其导航到Google的搜索页面。这个标签也更有可能被屏幕阅读器解读为比一个带着 onclick 将他们导航到谷歌,通过设置 window.location.href 在Javascript中手动操作。

© www.soinside.com 2019 - 2024. All rights reserved.