2016-09-17 4 views
0

Я использую веб-страницу шаблона. в заголовке страницы есть navbar.Напротив jQuery's: eq() - jquery

мой заголовок:

 <li class="scroll active"><a href="#home">Home</a></li> // first when page load 
     <li class="scroll"><a href="#services">Service</a></li> // second when page is scrolling to down. 
     <li class="scroll"><a href="#about-us">About Us</a></li> //.. 
     <li class="scroll"><a href="#portfolio">Portfolio</a></li> 
     <li class="scroll"><a href="#team">Team</a></li> 
     <li class="scroll"><a href="#blog">Blog</a></li> 
     <li class="scroll"><a href="#contact">Contact</a></li> 

function Scroll() { 
    var contentTop  = []; 
    var contentBottom = []; 
    var winTop  = $(window).scrollTop(); 
    var rangeTop = 200; 
    var rangeBottom = 500; 
    $('.navbar-collapse').find('.scroll a').each(function(){ 
     contentTop.push($($(this).attr('href')).offset().top); 
     contentBottom.push($($(this).attr('href')).offset().top + $($(this).attr('href')).height()); 
    }) 
    $.each(contentTop, function(i){ 
     if (winTop > contentTop[i] - rangeTop){ 
      $('.navbar-collapse li.scroll') 
      .removeClass('active') 
      .eq(i).addClass('active'); 
     } 
    }) 
}; 

теперь я хочу обратить пункты заголовка:

 <li class="scroll"><a href="#contact">Contact</a></li> 
     <li class="scroll"><a href="#blog">Blog</a></li> 
     <li class="scroll"><a href="#team">Team</a></li> 
     <li class="scroll"><a href="#portfolio">Portfolio</a></li> 
     <li class="scroll"><a href="#about-us">About Us</a></li> 
     <li class="scroll"><a href="#services">Service</a></li> 
     <li class="scroll active"><a href="#home">Home</a></li> 

но активный класс не изменилось, когда я прокручиваю страницу вниз.

Я думаю, что эта часть моего кода должна будет изменить:

 $('.navbar-collapse li.scroll') 
     .removeClass('active') 
     .eq(i).addClass('active'); 

, но я не знаю, как !!!

+0

Не понял, эта часть 'но активный класс не изменилось, когда я прокручиваю страница вниз. возможно, произойдет, когда вы измените порядок позиций (предполагая, что реверсирование выполняется программно)? – gurvinder372

ответ

0

Напротив $('selector').eq(x) является:

  • $('selector').not(':eq(x)')

ИЛИ

  • $('selector:not(:eq(x))')