繁体   English   中英

jQuery滚动功能只工作一次

[英]jquery scroll function working only once

我有以下代码应该用来检测滚动位置并相应地更改类,但是由于某种原因,它只能工作一次。

    $(document).on('scroll',function() { 
   // Do something  
   var scroll = $(window).scrollTop();
  if (scroll >= 70)    
   {      
     if ($('#head-nav').hasClass('off') ) {     
           $('#head-nav').removeClass('top clearfix off');                     
           $('#head-nav').addClass('top clearfix on');     
           $('#cart').removeClass('cart-on');
           $('#cart').addClass('cart-off'); 
           $('#nav-menu').removeClass('navigation grid-40 pull-30 tablet-grid-25 tablet-pull-25 omega alpha');
           $('#nav-menu').addClass('navigation grid-40 pull-0 tablet-grid-25 tablet-pull-25 omega alpha');
           //$('#cart').css('dislay','none !important');
       }
   }
  else if(scroll < 70)
    {
    if ($('#head-nav').hasClass('on') ) {
           $('#cart').removeClass('cart-off');
           $('#cart').addClass('cart-on');            
           $('#head-nav').removeClass('top clearfix on');
           $('#head-nav').removeClass('top clearfix off');  
           $('#nav-menu').removeClass('navigation grid-40 pull-0 tablet-grid-25 tablet-pull-25 omega alpha');
           $('#nav-menu').addClass('navigation grid-40 pull-30 tablet-grid-25 tablet-pull-25 omega alpha');
       }
  }
      });

你可以在这里查看我的代码

滚动功能正常工作......你不添加类后,再返回到$(“#头导航”)......我在这一行猜测错误:

    $('#head-nav').removeClass('top clearfix on');
    $('#head-nav').removeClass('top clearfix off');  //? add class not remove?

在这种情况下滚动<70你在从#头,导航的同时去除类关闭 ),所以你第二次测试类,你不觉得既不也不

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM