0

我已经得到了效果,当您单击一年列(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();
    });
});
4

1 回答 1

0

What you are looking for is jquery's .queue()

http://api.jquery.com/queue/

You can also use delay()

http://api.jquery.com/delay/

于 2012-09-16T07:41:36.937 回答