使用空链接调用js而不是其他html元素的原因

时间:2014-02-08 18:18:41

标签: javascript html css

在HTML开发中,我看到了 丑陋的空锚来调用JavaScript(我这样做也是这样):

<a href="#">Call some JavaScript</a>
<a href="javascript: void(0);">Call some JavaScript</a> 
<a href="javascript:;">Call some JavaScript</a> 

我认为过去使用空链接是因为css:hover不能处理其他元素, 对于默认光标:指针样式。

  • 今天这仍然是最佳做法吗?
  • 使用清洁标记有什么问题吗?

像:

<span class="clickable">Call some javascipt</span>

2 个答案:

答案 0 :(得分:1)

有几个原因

  1. 从语义上讲,使用锚点进行点击是正确的,因为它与操作相关,并且可访问性屏幕阅读器将其视为操作。
  2. 它保持默认用户交互代替链接样式等
  3. 有些手机不会很好地使用span和click绑定,你会发现使用锚点来减少交叉设备问题。
  4. 我确实认为它标记很大,但对于可访问性来说非常重要。

    希望有所帮助

答案 1 :(得分:0)

您可以使用second one之类的

<span class="clickable">Call some JavaScript</span>

为此,您必须为此css添加clickable class

.clickable {
   cursor:pointer;/* you can use hand in place of pointer */
   color:blue;
}
.clickable:hover {
   color:red;/* you can add more properties on hover of span */
}

Live Demo