$(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才会执行???
我说: 上下两句没有任何差别,你怎么知道执行的是哪句?
ㄟ(▔ ,▔)ㄏ
加点大括号吧