0

我正在尝试在滚动时使用不透明度使 div 淡入和淡出这是 js 代码

$(document).ready(function(){
        window.onscroll = scrolls;
    });
    function scrolls(){
        var offset = $("#scrollMore").offset();
        var w = $(window);
        var welcome = offset.top-w.scrollTop();
        console.log(welcome);
        if(welcome<100) {
            $("#scrollMore").fadeTo("slow",1);
        }
        else if(welcome>=100){
            $("#scrollMore").fadeTo("slow",0.1);
        }
    }

css

#scrollMore {
        background: url("http://www.wiltshirefarmfoods.com/images/scrollMore.png") no-repeat scroll center bottom transparent;
        cursor: pointer;
        height: 42px;
        right: 36px;
        text-indent: -9999px;
        width: 124px;
        z-index: 100;
        float: left;
        opacity: 0.1;
    }

但它不起作用它需要很长时间才能淡入淡出这里的 jsfiddle http://jsfiddle.net/jery0cdp/3/ 在使用 Bojan Petkovski [感谢他] 的代码后更新它在 chrome 上工作的第一个答案但是在 Firefox http://jsfiddle.net/jery0cdp/5/上仍然面临同样的问题

4

1 回答 1

1

也许做这样的事情http://jsfiddle.net/jery0cdp/5/

$( document ).scroll(function() {    

    var doc = $(this).scrollTop() + 300;
    var elem = $("#scrollMore").offset().top;

    if (doc > elem) {
        $("#scrollMore").animate({'opacity': 1 }, 200);
    } else {
        $("#scrollMore").animate({'opacity': 0.1 }, 200);
    }
});
于 2014-09-23T11:35:00.887 回答