一:通过html锚点实现滚动定位到页面指定位置(DIV):
如果我们要点击实现跳转的地方是一个html锚点,也就是点击一个A标签超链接实现跳转,可以把A标签的href属性直接指向跳转指定位置的div,代码实现思路如下:
<a class="banner" href="/schoolFair/registration#nav">
<a href="#abc">点击跳转</a>
<div id="abc">将要跳转到这里</div>
二:通过点击button按钮使用js实现滚定跳转到页面指定位置(DIV):
如果我们要点击实现跳转的地方是一个button按钮的话,由于button不能添加href,所以我们只好使用js跳转代码来实现,具体代码示例如下:
<script>
function onTopClick() {
window.location.hash = "#abc";
}
</script>
<input type="button" name="Submit" value="提交" οnclick="javascript:onTopClick();" />
<div id="abc">跳转到的位置</div>
上面这段代码,点击提交按钮,将会滚定跳转定位到同一页面id="abc"的div处。这段js点击跳转页面代码实现的原理是:页面各元素赋予唯一ID,点击提交按钮触发js点击事件,js通过ID滚动跳转定位到该元素,window.location.hash = "#abc"指的就是定位到当前页面id="abc"的div。
综:window.location.href表示重定向,后面跟着的是完整的url地址,与其相似的还有window.location.hash,
下面来比较window.location.href和window.locaiton.hash的区别。
(1)window.location.href
得到和使用的是完整的url,比如window.location.href="www.baidu.com”表示的是重新定向,页面跳转
到新的页面。也可以通过window.location.href得到a标签的完整的href,比如<a href="#book">如果使用href,那
么可以得到完整的链接(url)
(2)window.location.hash
得到的是锚链接。相比如href,通过window.location.hash并不会跳转到新的链接,只会在当前链接里面
改变锚链。并且如果有<a href="#book">通过window.location.hash得不到完整的链接(URL),仅仅得到#book.