很久之前就注意到a标签链接为空时有许多种写法
最近将常见的几种写法测试了一下
手机端可左右滑动查看代码

1
<a href="#">test1</a>

包含了一个位置信息,默认的锚点是#top,但可以加上 onclick=”return false”,防止上滚到页的顶部。

1
<a href="##">test2</a>

在Chrome中不再默认跳转到页面头部,地址栏被修改。

1
<a href="###">test3</a>

在Chrome、IE11中不再默认跳转到页面头部,地址栏被修改。

1
<a href="####">test4</a>

在Chrome、IE11中不再默认跳转到页面头部,地址栏被修改。

1
<a href="#all">test5</a>

不会滚动,但是如果有id为all的元素,点击这个连接后,锚点机制会作用,地址栏被修改。

1
<a href="javascript:void(0);">test6</a>

仅仅表示一个死链接,执行执行一次表达式“0”,然后返回undefined。

1
<a href="javascript:;">test7</a>

直接返回undefined。

1
<a href="javascript:">test8</a>

IE6中会使得页面中gif暂停,并且触发onbeforeunload事件,IE6认作这个页面有了重定向,并abort之后所有的请求。所以假如你在此之后替换了一个的src,IE6完全不会完成这个新的请求。

1
<a href="javascript:void(0)">test9</a>

同test8