我目前使用jQuery的<a>标签来启动像点击事件等事情。

例如<a href="#" class="someclass">Text</a>

但我讨厌“#”使页面跳转到页面顶部。我能做什么呢?


当前回答

如果你想使用一个锚,你可以像其他答案一样使用http://api.jquery.com/event.preventDefault/。

您还可以使用任何其他元素,如span,并将单击事件附加到它。

$("span.clickable").click(function(){
alert('Yeah I was clicked');
});

其他回答

我用过:

<a href="javascript://nop/" class="someClass">Text</a>

<a href="#! "">链接</a>和<a href="#/">链接</a>不工作,如果一个人必须点击相同的输入不止一次。它只需要在多个输入上进行1次事件单击。

最好的方法仍然是使用<a href="#">Link</a>

然后,

event.preventDefault();

对我来说最简单的就是这样做。

<a href=“#” onclick=“return false;”>一些文本</a>

使用JS的原因是大多数现代网站都依赖于它。

如果元素没有有意义的href值,那么它就不是真正的链接,那么为什么不使用其他元素呢?

正如Neothor所建议的那样,如果样式正确,span将作为一个可以点击的项目而显而易见。你甚至可以附加一个悬停事件,让元素在用户鼠标移动时“亮起”。

然而,话虽如此,你可能想要重新考虑你的网站的设计,这样它就可以在没有javascript的情况下运行,但在有javascript时可以通过javascript进行增强。

在#之后添加内容将页面的焦点设置为具有该ID的元素。最简单的解决方案是使用#/,即使你使用的是jQuery。但是如果你在jQuery中处理事件,event. preventdefault()是可行的方法。