前端的吸顶效果实现
原理是当scroll的值大于头部部分像素的时候执行一个position : fixed 的固定
首先要获取scroll的像素
let scrollTops = window.pageYOffset ||
document.documentElement.scrollTop ||
document.body.scrollTop;
判断是否大于头部的像素
this.isFixed = scrollTops > 152? true : false
执行方法使用监听scroll的事件
window.addEventListener('scroll',this.initHeight)
最后销毁事件
destroyed(){
window.removeEventListener('scroll',this.initHeight,false)
}
具体代码
在需要绑定的地方动态绑定class
:class="{'is_fixed':isFixed}"
is_fixed样式
&.is_fixed{
position: fixed;
top: 0;
width: 100%;
}
js代码
export default {
name:'nav-bar',
data(){
return{
isFixed:false
}
},
mounted(){
window.addEventListener('scroll',this.initHeight)
},
methods:{
initHeight(){
let scrollTops = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop;
this.isFixed = scrollTops > 152? true : false
}
},
//离开页面之后销毁
destroyed(){
window.removeEventListener('scroll',this.initHeight,false)
}
}