如何在“盲”效果切换后保持div水平滚动位置

时间:2013-10-10 10:04:45

标签: jquery scroll show-hide

我想完成这里所做的事情: http://jsfiddle.net/cbp4N/17/

$('#cbxShowHide').click(function(){
    if(this.checked) {
        $('#block').show('fast',function() {
            $(this).scrollTop($(this).data('scroll'));
        });
    }
    else {
       $('#block').data('scroll',$('#block').scrollTop());
       $('#block').hide('fast');
    }
});

在这篇文章中找到: Scroll position lost when hiding div

但是在带有水平滚动的div上。 我试过了 http://jsfiddle.net/cbp4N/233/

$('#button').click(function() {
    if ($('#block').is(':hidden')) {
        $('#block').show("blind");
        $('#block').scrollLeft($('#block').data('scroll'));
    } else {
        $('#block').data('scroll',$('#block').scrollLeft());
        $('#block').hide("blind");
    }
});

但它不起作用......

我们可以在隐藏之前看到滚动重置,我想阻止它。

1 个答案:

答案 0 :(得分:0)

这里有效,但是滚动的盲目效果有点难看......

$('#button').click(function() {
    if ($('#block').is(':hidden')) {
        $('#block').show("blind", function(){
            $(this).scrollLeft($(this).data('scroll'));
        });
    } else {
        $('#block').data('scroll',$('#block').scrollLeft());
        $('#block').hide("blind");
    }
});

http://jsfiddle.net/cbp4N/234/