由于某些奇怪的原因,当我点击A标签转到ID时,我的Header会搞砸。所以有没有办法使用jQuery来做到这一点,比如Click(),Goto ID?
<a href="#allreviewstop">Read Reviews (1)</a>
<div style="height:1500px;"> Really Long Stuff</div>
<div id="allreviewstop"> My Reviews go down here</div>
这是我正在处理的Click Here
页面答案 0 :(得分:2)
$("div").click(function() {
window.location.hash = "#"+$(this).attr("id");
}
这就是你要追求的吗?
[编辑]我不记得你是否需要#。如果它不起作用,请尝试使用它。
答案 1 :(得分:2)
尝试使用jquery ScrollTo插件 -
还要检查demo
$(function(){
$("#goTop").click(function(){
$.scrollTo($("#nav"), { duration: 0});
});
});
答案 2 :(得分:0)
此插件是否可以帮助您:jQuery ScrollTo?
答案 3 :(得分:0)
根据我的经验,window.location.hash
解决方案仅适用一次。如果您不想使用该插件,可以试试这个:
var navigationFn = {
goToSection: function(id) {
$('html, body').animate({
scrollTop: $(id).offset().top
}, 0);
}
}
然后像这样调用它(其中someID
是您要滚动到的元素的ID):
navigationFn.goToSection('#someID');
使用此功能,您还可以改变动画速度(我将其设置为0),以便它是即时的,但您可以将值传递给函数,以便代码可以重复使用。