0

I'm using a template webpage . there is a navbar in header of page.

my header:

        <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');
        }
    })
};

now I want to reverse items of header :

        <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> 

but active class not changed when I scroll page down.

I think this part of my code should will be change :

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

but I don't how !!!

F.Joodaki
  • 141
  • 3
  • 16
  • Didn't understood this part `but active class not changed when I scroll page down.` What is suppose to happen when you reverse the order of items (presuming that reversing is done programmatically)? – gurvinder372 Sep 17 '16 at 12:35

1 Answers1

0

Opposite of $('selector').eq(x) is:

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

OR

  • $('selector:not(:eq(x))')
Abdennour TOUMI
  • 87,526
  • 38
  • 249
  • 254