Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 滚动至div时菜单ul样式更改_Jquery_Css_Html_Scroll - Fatal编程技术网

Jquery 滚动至div时菜单ul样式更改

Jquery 滚动至div时菜单ul样式更改,jquery,css,html,scroll,Jquery,Css,Html,Scroll,我有一个菜单,菜单下有ul和方框作为内容,当我滚动到第一个方框时,ul的样式更改为另一个样式,当我滚动到第二个方框时,ul的样式更改为相同的另一个样式,第一个ul样式返回到其原始样式,诸如此类。 问题是当我到达页面的末尾时,有空间,所有uls样式都应该返回到原始样式,但是jquery代码的问题是,最后一个ul样式(对于最后一个框)仍然与我在最后一个框上一样。 正如你在这里看到的,当我到达页面末尾时,菜单中的每个ul样式都应该与原始样式相同,但不是。 您也可以下载该文件。我添加了一个变量endpo

我有一个菜单,菜单下有ul和方框作为内容,当我滚动到第一个方框时,ul的样式更改为另一个样式,当我滚动到第二个方框时,ul的样式更改为相同的另一个样式,第一个ul样式返回到其原始样式,诸如此类。 问题是当我到达页面的末尾时,有空间,所有uls样式都应该返回到原始样式,但是jquery代码的问题是,最后一个ul样式(对于最后一个框)仍然与我在最后一个框上一样。 正如你在这里看到的,当我到达页面末尾时,菜单中的每个ul样式都应该与原始样式相同,但不是。
您也可以下载该文件。

我添加了一个变量
endpoint
,该变量设置为最终div加上该div高度的偏移量,当页面滚动超过该值时,
menutext2
类将被删除

$(function(){

  var offsets = [],
      menuText = $('#menu .menuText'),
      endpoint;

  $("div.contentDiv").each( function(i, div) {
      if(i==$("div.contentDiv").length-1){endpoint=$(div).offset().top+$(div).outerHeight();}
      offsets.push({ id: div.id, offset: $(div).offset().top - 60});
  });

  $(window).scroll(function(e) {
    var start = $(this).scrollTop();
    var end = $(this).scrollTop();
    for ( var div = 0; div < offsets.length; div++ ) {
      if ( start > offsets[div].offset ) { 
        menuText.removeClass('menutext2').addClass('menutext');  

        menuText.filter('[linkId="'+offsets[div].id+'"]').addClass('menutext2').removeClass('menutext');
        }
    }

    if ( start === 0 || $(this).scrollTop()>endpoint) {
    menuText.removeClass('menutext2').addClass('menutext');  
    }


  });
});
$(函数(){
var偏移量=[],
menuText=$(“#menu.menuText”),
终点;
$(“div.contentDiv”)。每个(函数(i,div){
如果(i=$(“div.contentDiv”).length-1){endpoint=$(div.offset().top+$(div.outerHeight();}
push({id:div.id,offset:$(div.offset().top-60});
});
$(窗口)。滚动(功能(e){
var start=$(this.scrollTop();
var end=$(this.scrollTop();
对于(var div=0;div偏移量[div].offset){
menuText.removeClass('menutext2').addClass('menuText');
menuText.filter('[linkId=“”+offsets[div].id+'“]').addClass('menutext2').removeClass('menuText');
}
}
if(start==0 | |$(this).scrollTop()>endpoint){
menuText.removeClass('menutext2').addClass('menuText');
}
});
});