在完成一个工具栏功能的时候发现点击a标签就会自动置顶,效果如下
html代码如下:
<div class="toolbar">
<a href="#" class="toolbar-item toolbar-item-weixin">
<span class="toolbar-btn"></span>
</a>
<a href="#" class="toolbar-item toolbar-item-feedback">
<span class="toolbar-btn"></span>
</a>
<a href="#" class="toolbar-item toolbar-item-app">
<span class="toolbar-btn"></span>
</a>
<a id="backTop" href="#" class="toolbar-item toolbar-item-top">
<span class="toolbar-btn"></span>
</a>
</div>
但是代码中除了给id=’backTop’的a标签绑定了返回顶部的事件外,其他a标签是没有绑定事件的。那是什么原因导致这种情况发生了?
经过定位分析,只有id=backtop的a标签置顶时并没有触发go方法。那说明置顶的原因不是自定义事件的使用。
后将href=“#” 改为 javascript:;才解决。
总结:
href='#' 代表当前页面,不跳转。如果当前页面中需要滚动的话,那么用这种方式就可以直接回到顶部。
href="javascript:void(0);" 或者 href="javascript:;" 效果一样
void是一个操作符,void(0)返回undefined,地址不发生跳转。而且这种方法不会像第一种方法一样直接将js方法暴露在浏览器的状态栏。