<a href="javascript:void(0);"> over <span> link text </span></a>的任何优势

时间:2011-09-06 22:05:22

标签: jquery html javascript-events event-handling anchor

我有一些HTML DOM元素,我需要捕获点击事件,如下拉菜单小部件等。 我想我们可以用两种方式实现:

<a href="javascript:void(0);" id="option1">My text</a>

或其他方式是:

<span id="option2">My text 2</span>

在第二个选项中,我当然可以添加CSS属性cursor:pointer。

我需要的只是捕获click事件,对于这两种情况,我可以使用相同的单击处理函数。

您认为我们有什么理由使用锚标记方法吗?

第二个选项看起来更干净。此外,IE具有锚标记点击事件的默认行为,这可能会产生不良后果,等等。

3 个答案:

答案 0 :(得分:4)

锚标记的一些好处:

  • 您可以为未启用JavaScript的用户提供默认行为(如果您关心的话)。
  • 键盘上的标签将默认设置为锚标签。
  • 您将获得锚标签上可能需要的默认样式。

答案 1 :(得分:1)

取决于您的需求/需求。使用链接有利于它们显示为链接(其他颜色,不同的鼠标光标,仅搜索链接的可能性,可能的可访问性问题等)

如果您已经激活或访问过该链接,则使用跨度不会执行此操作,但还有其他好处,例如没有其他颜色。

据说有恕我直言,选择任何一种方法都没有实际好处,可能取决于文本是否应该显示/表现得像链接一样。

答案 2 :(得分:0)

对于span看起来像一个锚,你必须设置颜色(标准和悬停。并且没有办法为它设置Visited),下划线和光标:指针。仍然认为它更清洁?