Javascript一页滚动脚本滚动到每个点击的链接一个接一个



我有一个被划分为一个部分的页面。它工作得很好,除了一件事,脚本滚动页面到特定的部分,但如果我要点击多个链接,它会把我一个接一个地发送到每个点击的链接。

jQuery(window).bind("load", function () {
    var hash = window.location.hash;
    hash = hash.replace("#", "");
    var elem = jQuery(".pb-line-css-group-" + hash);
    menu_scroll_to(elem);
});
jQuery(document).ready(function () {
    jQuery(".menu-item A").click(function () {
        var hash = jQuery(this).attr('href');
        hash = hash.replace("#", "");
        hash = hash.replace("/", "");
        var elem = jQuery(".pb-line-css-group-" + hash);
        menu_scroll_to(elem);
    });
});
function menu_scroll_to(elem) {
    if (elem) {
        jQuery('html, body').animate({
            scrollTop: elem.offset().top - 70
        }, 2000, "easeOutQuint");
    }
}

我只想滚动到第一个点击的链接,如果我在滚动过程中点击另一个链接,将不会滚动到

的位置

我认为您需要一个特殊的标志,例如"window.wolling",在滚动前将其设置为true,在滚动后的回调中将其设置为false。当用户尝试点击链接时,当第一个链接正在工作时,它什么也不会做。

最新更新