首页 > 关于页面滚动的一个动画,if语句不执行怎么办

关于页面滚动的一个动画,if语句不执行怎么办

$(function(){

var arr_elem=[$("#part_0"),$("#part_1"),$("#part_2"),$("#part_3")];

offset(arr_elem);    
function  offset(arr_elem){
    var n=arr_elem.length;
     arr_y=[];
    for(var i=0;i<n;i++)
        arr_y[i]=arr_elem[i].offset().top;
、/存储四个元素的offset值
    $(window).scroll(function(){
        var top=$(window).scrollTop();
    for(var i=0;i<n;i++)
    
        if(top>=arr_y[i]&&top<arr_y[i+1])
        $("#act>div").eq(i).css("opacity",1).siblings().css("opacity",0.5);
        else if(i==n-1)//为什么总是执行这个语句????
        $("#act>div").eq(i).css("opacity",1).siblings().css("opacity",0.5);

        });
        
}

})

希望页面滚动时,按照滚动的距离让右侧元素样式变化,问题是,当页面滚动时为什么只有else if那一句执行??如果把else if 那句撤掉,第一个if才会执行???

我说: 上下两句没有任何差别,你怎么知道执行的是哪句?

ㄟ(▔ ,▔)ㄏ


加点大括号吧

【热门文章】
【热门文章】