文章详情页
javascript - 关于scroll事件的一个小问题
问题描述
window.addEventListener(’scroll’,()=>{let t = document.documentElement.scrollTop || document.body.scrollTop,nav = document.getElementsByClassName(’nav’)[0];t >= nav.offsetTop ? (nav.classList.add(’fixed’)) : (nav.classList.remove(’fixed’));})
大家好 以上代码无法remove类名 add正常 。。。即使我把add和remove的前后顺序颠倒过来也无法执行;这个问题查找了许久都无法解决,所以还请各位老铁多多指教。感谢感谢。
问题解答
回答1:nav.offsetTop 是 0 吧。
把 t >= nav.offsetTop 改成 t > nav.offsetTop。
回答2:1、首先将 t 和 nav.offsetTo 输出来看一下,确定这些值是预期的值
2、确定你的滚动区域是在body上而不是在body中的某个p上
标签:
JavaScript
上一条:react.js - javascript中如何用占位符定义restful那种url啊, angular我知道, 但是用react该用哪个库?下一条:javascript - js,有几行代码不太明白?
相关文章:
1. javascript - 函数声明和匿名函数有什么不同?(前端小白求助。。)2. HTML5禁止img预览该怎么解决?3. javascript - 求助关于js正则问题4. angular.js - 在ionic下,利用javascript导入百度地图,pc端可以显示,移动端无法显示5. javascript - 关于js,alert()阻塞的问题6. mybatis - Java关于Mysql的随机id生成7. mysql - 数据库建字段,默认值空和empty string有什么区别 1108. dologin说是没有定义9. javascript - 关于js原生事件的绑定与解除绑定10. 代码如下,java用BigDecimal四舍五入怎么还有问题呀?哪种方式是完全没有问题的?
排行榜