如何点击div,平滑滚动到锚点?通过jQuery

时间:2014-06-17 21:46:29

标签: jquery html

我将div设置为链接。点击后,它会移动到页面中的锚点。使用此方法将整个div设为链接:Make Div a Link

问题不在于链接本身的功能,而在于我无法顺利滚动到锚点。在将div设置为链接(当它只是文本链接)之前,平滑滚动 正常工作。

无法让这两个脚本很好地播放。

$(document).ready(function() {
    $('a').click(function(){
        $('html, body').animate({
            scrollTop: $( $.attr(this, 'href') ).offset().top
        }, 500);
        return false;
    });
    $("div#learnMore").click(function() {
        window.location = $(this).find("a").attr("href");
        return false;
    });
});

使用完整代码在此处设置JSFiddle:http://jsfiddle.net/HNbdm

非常感谢任何见解!

1 个答案:

答案 0 :(得分:0)

我不确定你为什么$($.attr(this, 'href'))

我也不确定你为什么要在这里使用这两个功能。你只需要一个:

$("#learnMore").click(function() {
    $("html, body").animate({
        scrollTop: $("#more").offset().top
    });
});

当您点击#learnMore div时,它会将页面顺利滚动到#more div的顶部。

Demo