使用锚作为javascript动作,链接应该是什么?

Mat*_*wdy 4 html javascript

我已经看过(和使用过)代码在我的生活中有多次链接产生一个javascript动作,但是我从来没有得出关于href属性是空白还是#的结论.你有这样或那样的偏好,如果有的话,为什么?

<a href="" onclick="javascript: DoSomething();">linky</a>
Run Code Online (Sandbox Code Playgroud)

要么

<a href="#" onclick="javascript: DoSomething();">linky</a>
Run Code Online (Sandbox Code Playgroud)

nic*_*ckf 8

必须拥有该属性的某些内容href,否则浏览器不会将其视为链接(例如,使其可聚焦或赋予其下划线) - 这就是"#"的使用变得普遍的原因.

此外,事件的内容属性(onclick,onmouseover,on...)已经被视为JavaScript的:你没有需要与它前言javascript:

所以给出你的例子,内联的最佳方式(可能本身并不是最好的方法)是这样的:

<a href="#" onclick="DoSomething(); return false">linky</a>
Run Code Online (Sandbox Code Playgroud)


sbl*_*ndy 6

Href上查看关于Javascript链接的讨论:"#"或"javascript:void(0)"?.

此外,href留空会导致浏览器在用户鼠标悬停时不使用指针光标,尽管您可以使用CSS修复它.