带有href ="javascript:;"的HTML <a>元素的含义

Bor*_*din 10 html javascript

我偶尔会看到一个HTML <a>元素,其href属性是一个只有javascript该方案的URI ,以及一个;路径的空语句.

  • 这样做的目的是什么?

  • 它是一样的href="javascript:void(0);"吗?

  • 是否与完全没有href属性相同?

  • 是否与完全没有<a>元素一样?

更新

我看到的确切内容是<a href="javascript:;" style="cursor: default;"></a>.那么这只是一种控制光标图形的方法吗?

小智 6

您可以通过以下某些步骤了解:

<a onclick="foo()">Next Image</a>
<a href="#" onclick="foo()">Next Image</a>
<a href="javascript:foo()">Next Image</a>
<a href="javascript:void(0)" onclick="foo()">Next Image</a>
<a href="#" onclick="foo(); return false;">Next Image</a>
Run Code Online (Sandbox Code Playgroud)

方法1通常不会将鼠标光标更改为"手形光标",因此在某些情况下可能并不理想.

方法2似乎导致页面有时在IE 6和IE 7上转移到新位置.(到页面顶部?)

方法3 ...应该工作......但它是一种老式的方式,现代浏览器应该避免吗?

方法4应该运行良好.void-the-void /作者似乎暗示它有时会破坏并尝试永远不会使用 href="javascript:[anything]"

方法5可能效果最好吗?根据上面的文章,这可能是最好的方式,因为它不使用href="javascript:[something]"和返回false部分将导致href ="#"不被评估,所以这是最好的方法?非常感谢!