导航栏固定位置偏移滚动和平滑滚动

时间:2015-10-10 02:08:03

标签: javascript jquery scroll

我遇到了问题,我有两个不兼容的js脚本。

第一个使用偏移量“滚动到ID”,因此它与浏览器顶部固定导航栏的高度相匹配。

第二个用于使滚动在行进时平滑,因此它不会立即转到目标ID。问题是我无法将它们合并在一起。

使用偏移滚动:

$(document).ready(function () {

    $(".first-scroller").on('click', 'a', function (event) {

        event.preventDefault();
        var o = $($(this).attr("href")).offset();
        var sT = o.top - $("#fixedbar").outerHeight(true);
        window.scrollTo(0, sT);
    });
});

平滑滚动

$('a[href*=#]:not([href=#])').click(function () {

    if (location.pathname.replace(/^\//, '') == this.pathname.replace(/^\//, '') && location.hostname == this.hostname) {

        var target = $(this.hash);
        target = target.length ? target : $('[name=' + this.hash.slice(1) + ']');

        if (target.length) {

            $('html,body').animate({
                scrollTop: target.offset().top
            }, 1000);

            return false;
        }
    }
});

0 个答案:

没有答案