我目前使用jQuery的<a>标签来启动像点击事件等事情。
例如<a href="#" class="someclass">Text</a>
但我讨厌“#”使页面跳转到页面顶部。我能做什么呢?
我目前使用jQuery的<a>标签来启动像点击事件等事情。
例如<a href="#" class="someclass">Text</a>
但我讨厌“#”使页面跳转到页面顶部。我能做什么呢?
当前回答
为了防止页面跳转,你需要调用e.s stoppropagation ();在调用e.b epreventdefault()之后:
stopPropagation阻止事件沿着DOM树向上移动。更多信息请访问:https://api.jquery.com/event.stoppropagation/
其他回答
如果你想使用一个锚,你可以像其他答案一样使用http://api.jquery.com/event.preventDefault/。
您还可以使用任何其他元素,如span,并将单击事件附加到它。
$("span.clickable").click(function(){
alert('Yeah I was clicked');
});
解决方案#1:(普通)
<a href="#!" class="someclass">Text</a>
解决方案#2:(需要javascript)
<a href="javascript:void(0);" class="someclass">Text</a>
解决方案#3:(需要jQuery)
<a href="#" class="someclass">Text</a>
<script>
$('a.someclass').click(function(e) {
e.preventDefault();
});
</script>
我总是用:
<a href="#?">Some text</a>
当试图阻止页面跳转时。不确定这是否是最好的,但它似乎已经工作了很多年。
您可以使用event.preventDefault()来避免这种情况。更多信息请点击:http://api.jquery.com/event.preventDefault/。
我使用的方法是这样的:
<a href="#null" class="someclass">Text</a>