我是这样写的$(window).scroll(function () {
var pos = $(window).scrollTop();
if (pos > 69) {
$('#topnav').addClass('navbar-fixed-top');
}else{
$('#topnav').removeClass('navbar-fixed-top');
}
});
var pos = $(window).scrollTop();
if (pos > 69) {
$('#topnav').addClass('navbar-fixed-top');
}else{
$('#topnav').removeClass('navbar-fixed-top');
}
});
解决方案 »
- 谁能帮我把这六行jquery代码改为javascript
- 用JS进行打印时,IE7总是默认为"缩小字体填充",有没有解决办法呢?
- 关于JQ clone的问题,大家进来帮帮忙看看,拜托啦
- javascript控制table的问题! 高手来!!
- 正则表达式,分割字符串, 梅大师求解!
- 求jquery解析复杂的json
- 怎么根据window窗口的名称,得到窗口这个对象?
- JavaScript 从入门到精通要多久?
- 问一个辣手的问题?????
- 在线等,JS计算工作日差不算周末
- 怎样实现点击链接,弹出的图片编辑窗口,都图片进行裁剪,旋转
- [React] 父组件中有一组子组件, 如何将子组件中操作得到的值传回父组件并进行排序
举个例子
topnav的高度是100
你希望监控>100就贴顶
当大于100的时候,由于fix之后原nav的dom位置出现脱离意思是会导致scroll获取当前滚动条高度出现丢失nav高度,即当前滚动条高度不计算nav
所以当前你以为大于100,实际是0,然后触发addClass和removeClass都会出发scroll事件,不断的add,remove就达到了闪烁问题
你会发现只有滚动条高度大于200才不会闪烁,因为大于200的时候,fix类出现,当前的滚动条高度是200-100即大于100,所以没有再出现remove