jQuery .scroll和scrollTop在IE中不起作用

时间:2015-12-29 04:59:37

标签: javascript jquery css internet-explorer

codepen link

滚动事件行为无法在IE中正常运行。当我使用鼠标滚轮向下滚动时,标题应固定在顶部,类为nav-down,但它首先附加课程nav-up然后nav down

其他浏览器工作正常。 谁能帮帮我吗。 :)

$(function(){
  var lastScrollTop = 0;
  $(window).scroll(function(){
    if ($(window).scrollTop() > 600) {
      console.log('WORKING');
          //scroll
          var st = $(this).scrollTop();
          console.log('lastScrollTop:' +lastScrollTop+ 'st: '+st+' position:'+ (lastScrollTop - st));
          if(lastScrollTop - st < 0){
            console.log('down');
            $(".top-header").removeClass("nav-down").addClass("nav-up");
          }else{
            console.log('up');
            $(".top-header").removeClass("nav-up").addClass("nav-down");
          }
          lastScrollTop = st;    
    } else {
       $(".top-header").removeClass("nav-down").addClass("nav-up");
    }
  });
});

HTML

<header class="top-header nav-up">
  <div class="container">
    <div class="row">
      <div class="col-md-6"><a class="brand-name">logo</a></div>
      <div class="col-md-6 text-right">
        <div class="btn btn-header">Download</div>
      </div>
    </div>
  </div>
</header>
<section class="bring-scroll">
  <div class="container">
    <div class="row text-center">
      <h1>keep scrolling to see the effect of navigation scrolling</h1>
    </div>
  </div>
</section>

CSS

body {
  height: 1600px;
}
.brand-name {
  width: 200px;
  display: inline-block;
  font-size: 25px;
  color: #fff;
}
.brand-name img {
  width: 100%;
}
.top-header {
  background: #374965;
  height: 60px;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 33;
  padding: 9px 0;
  transition: top 0.2s ease-in-out;
  width: 100%;
}
.top-header.nav-up {
  top: -60px;
}
.top-header.nav-down {
  top: 0px;
}
.btn-header {
  background: #ec4a3d;
  color: #ffffff;
}
.bring-scroll {
  color: white;
  height: 600px;
  display: block;
  background: #ec4a3d;
  margin-bottom: 5000px;
}

1 个答案:

答案 0 :(得分:0)

您使用的是哪个版本的jQuery?版本2.X和3.X仅支持IE 9+,并且它不支持较旧的浏览器版本,例如IE 6-8,这可能是您的情况。

这是在http://jquery.com/browser-support/

上指定的
  

如果您需要支持Internet Explorer 6-8,Opera 12.1x或Safari 5.1+等旧版浏览器,请使用jQuery 1.12。