Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery <;a href=";javascript:void(0)&引用&燃气轮机;超过<;span>;链接文本</span>;_Jquery_Html_Javascript Events_Event Handling_Anchor - Fatal编程技术网

Jquery <;a href=";javascript:void(0)&引用&燃气轮机;超过<;span>;链接文本</span>;

Jquery <;a href=";javascript:void(0)&引用&燃气轮机;超过<;span>;链接文本</span>;,jquery,html,javascript-events,event-handling,anchor,Jquery,Html,Javascript Events,Event Handling,Anchor,我有一些HTMLDOM元素,需要为其捕获单击事件,如下拉菜单小部件等。 我想我们可以通过两种方式实现: <a href="javascript:void(0);" id="option1">My text</a> 或者另一种方式是: <span id="option2">My text 2</span> 我的文本2 在第二个选项中,我当然可以添加CSS属性cursor:pointer 我只需要捕获click事件,对于这两种情况,我可以使用

我有一些HTMLDOM元素,需要为其捕获单击事件,如下拉菜单小部件等。 我想我们可以通过两种方式实现:

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

或者另一种方式是:

<span id="option2">My text 2</span>
我的文本2
在第二个选项中,我当然可以添加CSS属性cursor:pointer

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

你认为我们使用锚定标记方法有什么原因吗


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

取决于您需要/想要什么。使用链接的好处是它们将显示为链接(其他颜色、不同的鼠标光标、仅搜索链接的可能性、可能的可访问性问题等)

使用“跨距”并不能做到这一点,但它还有其他好处,例如,如果您已经激活或访问了链接,则不会使用不同的颜色


也就是说,选择任何一种方法都没有真正的好处,这可能取决于文本是否应该显示/表现得像链接。

锚定标记的一些好处:

  • 您可以为未启用JavaScript的用户提供默认行为(如果您关心的话)
  • 默认情况下,键盘上的选项卡将焦点设置在锚定标记上
  • 您可以获得锚定标记上可能需要的默认样式

对于span,您必须设置颜色(标准颜色和悬停颜色,无法设置),下划线和光标:指针。你还认为它更干净吗?

我想你提到的锚定标记方法只是旧方法。文本不是用来链接的,而是用户应该觉得可以点击的东西。在这种情况下,不需要跟踪它是否显示。