Javascript Jquery使用滚动显示/隐藏

Javascript Jquery使用滚动显示/隐藏,javascript,jquery,scroll,Javascript,Jquery,Scroll,我已经得到了效果,当你点击一年栏(2012年、2011年、2010年等)时,它会显示每一年的内容,并隐藏其他的内容。我已经让它工作,例如,滚动到“2011”栏,点击它,它显示了它的内容,隐藏了其他年份的其他内容 问题是,当我单击时,动画会同时产生所有效果,让用户感到困惑,我想我必须通过动画步骤来实现,但我还没有找到jquery解决方案 我应该在代码中添加什么来修复这种奇怪的疯狂效果 我的代码: /* Scroll Function */ function scrollto(position){

我已经得到了效果,当你点击一年栏(2012年、2011年、2010年等)时,它会显示每一年的内容,并隐藏其他的内容。我已经让它工作,例如,滚动到“2011”栏,点击它,它显示了它的内容,隐藏了其他年份的其他内容

问题是,当我单击时,动画会同时产生所有效果,让用户感到困惑,我想我必须通过动画步骤来实现,但我还没有找到jquery解决方案

我应该在代码中添加什么来修复这种奇怪的疯狂效果

我的代码:

/* Scroll Function */
function scrollto(position){
    $('html, body').stop().animate({
        scrollLeft: position
    }, 1000);
}

/* Calendar Scroll */
$(".sub_section_title").click( function(e) {
    e.preventDefault();
$(".contenido_calendario").hide();
$(this).next(".contenido_calendario").toggle('slow');
scrollto($(this).offset().left - 352)
});
我已尝试使用.queue()此选项,但不起作用:

$(".sub_section_title").click( function(e) {
    e.preventDefault();
    $(".contenido_calendario").hide();
    $(".contenido_calendario").queue(function() {
        scrollto($(this).offset().left - 352);
    $(this).dequeue();
    });
    $(".contenido_calendario").queue(function() {
        $(this).next(".contenido_calendario").toggle('slow')
    $(this).dequeue();
    });
});

您要查找的是jquery的.queue()

您还可以使用delay()


嗨,我问了一个问题,我试过什么,但似乎也不管用。