<a href="javascript:;"></a>
有时会在网页a标签中看到这样的代码,比如:
<a href="javascript:;">反选</a>
这是啥意思呢?
我们知道标签的 href属性用于指定超链接目标的URL,href 属性的值可以是任何有效文档的相对或绝对URL,包括片段标识符和 JavaScript 代码段。
这里的"javascript:" 是一个伪协议,表示在触发默认动作时,执行一段JavaScript代码,而 "javascript:;" 表示什么都不执行,这样点击时就没有任何反应,就去掉了a标签的默认行为,可以实现当a标签的点击事件运行时,如果页面内容很多,有滚动条时,页面也不会乱跳,用户体验会更好一些。
回到上面例子,这种情况一般都是把a当做一个按钮使用,当点击时执行某个事件,并不需要跳转。
另外一种写法是:href=”javascript:void(0)”或href=”javascript:void(null)”,这里void 是JavaScript 的一个运算符,void(0)就是什么都不做的意思。
这样的写法会产生什么问题,还有待继续验证,如果有大神知道希望能指出,谢谢!