2017-03-07 74 views
0

我想添加和刪除活動類,以我的jQuery的滾動功能我犯了一個腳本導航,但加入活動類,但不reomve它我想添加和刪除活動類,以我的導航上滾動

jQuery.noConflict(); 
jQuery(document).ready(function() { 
jQuery(document).scroll(function(){ 
    var row = jQuery('#about-btn'), scrollTop = jQuery(this).scrollTop(); 
    if(scrollTop > 750) 
    { 
     row.addClass('active'); 
    } 
    else if (scrollTop == 800) 
    { 
     row.removeClass('active'); 
    } 
}); 
}); 

回答

0

腳本刪除類「活動」,只在滾動是確切的800像素。

嘗試更換

if(scrollTop > 750) 

if(scrollTop > 750 && scrollTop <= 799) 

else if (scrollTop == 800) 

if (scrollTop >= 800) 
+0

感謝它現在完美工作 –

0

這個問題是因爲如果scrollTop的值爲,那麼只刪除該類800px,這是一個非常小的命中目標。更重要的是,當你考慮到瀏覽器沒有更新每個滾動的像素,並可能會漏掉一些。

要解決此問題,請使if語句中的條件使用一個範圍。我還建議您選擇滾動處理程序的以外的#about-btn元素。試試這個:

jQuery.noConflict(); 
jQuery(function($) { 
    var $row = $('#about-btn'); 

    $(document).scroll(function(){ 
    var scrollTop = $(this).scrollTop(); 
    $row.toggleClass('active', scrollTop > 750 && scrollTop < 800); 
    }); 
}); 
相關問題