滚动jquery函数

时间:2014-06-24 19:27:00

标签: jquery

我想在点击导航栏时顺畅滚动,因此他们有href #blahblah的位置。

我目前的代码无法使用,如下所示:

$(".menu").click(function() {
    var href = $(this).attr('href');
    $('html, body').animate({
        scrollTop: $(href).offset().top
    }, 2000);
});

3 个答案:

答案 0 :(得分:0)

我想你想要这个,所以你要选择一个ID:

scrollTop: $('#' + href).offset().top

答案 1 :(得分:0)

传递正确的字符串

$(".menu").click(function() {
var href = $(this).attr('href');
$('html, body').animate({
    scrollTop: $("#"+href).offset().top
}, 2000);
});

答案 2 :(得分:0)

这显示了我的回答:http://jsfiddle.net/ZjQLy/

HTML:

<div id="click" href="#tar">click me</div>
<div id="space"></div>
<div id="tar">whats up</div>

的javascript:

$("div#click").on("click", function () {
  $("html, body").animate({
      scrollTop: $($("div#click").attr("href")).offset().top
  }, 2000);
});

此外,这是另一个具有答案的堆栈溢出问题:JQuery smooth scrolling to one element when clicking a corresponding element