滚动事件行为无法在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;
}
答案 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。