基于滚动左距离的不透明度

时间:2012-08-11 19:08:55

标签: jquery scroll jquery-animate opacity

$(document).scroll(function() {

    var distanceLeft = $(document).scrollLeft();

    if( distanceLeft > 3800)
    {
        $('#first_circle').animate({
            opacity: 1
        }, 1000);
    }

    if( distanceLeft < 3800)
    {
        $('#first_circle').animate({
            opacity: 0
        }, 1000);
    }
)};

您好 我试图纠正这一点,以便当滚动超过3800时,div淡入,当用户向后滚动时,它会淡出? 谢谢你的任何意见

2 个答案:

答案 0 :(得分:2)

只需更改变量并添加一些数学运算:http://jsfiddle.net/z7E9u/155/

答案 1 :(得分:0)

您当然可以使用mkey answer之类的简单方法。但是,如果您需要更复杂的事情来“动画”,请尝试jQuery Transe。对于这个问题,这是一个彻底的解决方案。您可以根据当前滚动偏移(甚至CSS3-Transforms等)更改几乎所有内容。

在你的情况下,尝试这样的事情:

$('#fading').transe({
    direction: 'x',
    start: 3575,
    end: 4150,
    css: 'opacity',
    from: 0,
    to: 1
});

<强> Demo