Javascript 停止锚元素重新加载和/或滚动到顶部
当有人单击#collapseOne锚定时,页面会重新加载,并滚动到顶部。我需要禁用它。但是,我不能将href更改为其他任何内容,因为它用于站点的功能。有什么方法可以防止网站滚动到顶部,或者根本不允许它重新加载Javascript 停止锚元素重新加载和/或滚动到顶部,javascript,jquery,css,Javascript,Jquery,Css,当有人单击#collapseOne锚定时,页面会重新加载,并滚动到顶部。我需要禁用它。但是,我不能将href更改为其他任何内容,因为它用于站点的功能。有什么方法可以防止网站滚动到顶部,或者根本不允许它重新加载 <div class="accordion" id="accordion2"> <div class="accordion-group"> <div class="accordion-heading"> <a class="acco
<div class="accordion" id="accordion2">
<div class="accordion-group">
<div class="accordion-heading">
<a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseOne">
Collapsible Group Item #1
</a>
</div>
<div id="collapseOne" class="accordion-body collapse in">
<div class="accordion-inner">
Anim pariatur cliche...
</div>
</div>
</div>
<div class="accordion-group">
<div class="accordion-heading">
<a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseTwo">
Collapsible Group Item #2
</a>
</div>
</div>
e
是事件对象,调用preventDefault
方法将停止其正常行为(在本例中,重新加载页面并重置滚动位置)。您可能需要将其与现有的点击处理代码结合起来,以使其正常工作(您显然没有提供所有代码)
return false
的工作原理也类似于e.preventDefault()
(实际上它只运行e.preventDefault
,还运行e.stopPropagation
,防止点击事件传播到DOM中的父元素)。javascript:void(0)
我始终建议您不要使用preventDefault
(跨浏览器问题)。
返回false
也不是那么可靠
我在过去也遇到过同样的问题。我求助于此,因为它在所有浏览器中都有效
$('#my_herf_id').on('click', function() {
// code..
$("#my_herf_id").attr('href','javascript:void(0)');
}
您的JS代码请:)。可能缺少一个
e.preventDefault()代码>在单击事件中。点击事件代码就可以了。刚刚添加了JS。这是推特引导。我本来可以复制更少的代码,但我不确定你需要看哪个部分。不管你使用什么,当你想禁用链接的自然行为时..总是使用javascript:void(0)
。检查答案,好的luk,你的项目他特别声明href
值不能更改。否则是的,这是一种比preventDefault
或return false
更可靠的防止默认锚行为的方法。这里没有任何变化…op得到了他想要的..它与prevent default对href的作用相同..100%成功我尝试过,但运气不好。我做对了吗$('collapseOne')。在('click',function(){//code..$(“#collapseOne”).attr('href','javascript:void(0);}@user2635166:将其提供给链接的id,您没有为其分配id,无法找到正确的放置位置。我猜即使有正确的答案,我也没有足够的经验。无论如何,谢谢!
$('a.accordion-toggle').on('click', function(e) {
// whatever other code this click event needs to run here...
e.preventDefault();
}
$('#my_herf_id').on('click', function() {
// code..
$("#my_herf_id").attr('href','javascript:void(0)');
}