1、<a href="javascript:;"></a>
2、<a href="####"></a>
3、<a href="javascript:void(0)"></a>
4、<a href="javascript:void(null)"></a>
5、<a href="#" onclick="return false"></a>
6、<a href="javascript:"></a> //这样也是可以的
上面有什么区别的,在实际工作中,哪一种最好?
为什么QQ用的是javascript:; ,而微博用的是javascript:void(0)
然后,我还有更进一步的疑问:JavaScript中语句最后的分号是可以缺省的,那为何要使用javascript:;而不是javascript:呢?
是习惯还是规范,求解
天蓬老师2017-04-10 15:47:35
void 是运算符,对任何值都返回undefined;下面几种写法是相同的
<a href="javascript:;"></a>
<a href="javascript:void(0)"></a>
<a href="javascript:void(null)"></a>
<a href="javascript:"></a> //这样也是可以的
怪我咯2017-04-10 15:47:35
用 a 是因为 a 元素自带 pointer
href用javascript不# 是因为点击事件同时会触发 a链接的跳转,所以#要return false;阻止跳转
而用javascript把链接诠释成了js 就不会跳了,至于 void(0), void(null) 和 :; , : 我就不知道了。
我只用 :;
好像问题最多的是 ie6 的情况下
ringa_lee2017-04-10 15:47:35
<a href="javascript:;"></a> <!-- 我就说一句 “一直在用这个,一直没出过问题。” -->
这些玩意 就是因为js太过于灵活。
除了 以下两个不推荐。别的都无所谓
<a href="####"></a>
<a href="#" onclick="return false"></a>