你怎么取消你的href =“javascript:void(null)”?

时间:2009-10-30 14:35:53

标签: javascript html events

我最近被javascript:void(null);应用于图像时,我的href中的错误。

在我的Safari版本(Leopard PPC中的4.0.3)中,我应用了javascript的href:void(null);在图像周围,图像完全从布局中消失。环顾四周,我发现在IE中也会发生这种情况,但我无法确认。

我读过使用带有onclick处理程序的井号(#)

onclick="return false;"

这样可行,但我讨厌将英镑附加到网址上。

我知道有各种各样的技巧,那么你如何处理你的hrefs?

5 个答案:

答案 0 :(得分:6)

喜欢这个

<a href="#" onclick="doSomething(); return false;">

或者最好

<a href="nonJavascriptAlternative.html" id="foo">

然后用javascript附加一个处理程序 - 在jQuery中

$('foo').click(function() { doSomething(); return false; });

答案 1 :(得分:5)

我首选的选项是

<a href="non_javascript_alternative.html" onclick="doSomething(); return false;">

......尽可能(并非总是如此)。在文档加载后,在属性中使用事件处理程序具有以下优点:

  1. 简单
  2. 净度
  3. 兼容性
  4. JavaScript事件处理程序甚至会在文档加载之前起作用。

答案 2 :(得分:2)

如果您返回false onclick,则会取消点击操作,因此#不会附加到网址

<a href="#" onclick="return false;">

答案 3 :(得分:1)

我在我的hrefs中放入了有效的网址。你为什么要做一些没有做任何事情的链接?

 <span onclick="doSomething();" class="fakeLink"><!-- active elements --></span>

答案 4 :(得分:1)

不要因为你提到的原因和某些浏览器使用#,如果用户滚动远离顶部点击链接会将它们跳回到顶部。我用这个:

<a href="javascript:"><img src=""/></a>

不应该导致任何浏览器出现问题(至少我还没有遇到问题)。