vue实现固定位置显示功能
2019/6/26 23:00:54
本文主要是介绍vue实现固定位置显示功能,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
在vue项目中实现吸顶效果.
比如说,我们要实现的功能是导航栏在页面下滑到一定位置之后,便固定不定。
首先:要在mounted生命周期内监听'scroll'事件,事件触发后,执行一个处理滚动的函数。
window.addEventListener('scroll', this.handleScroll) methods:{ handleScroll () { var scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop var offsetTop = document.querySelector('#searchBar').offsetTop if (scrollTop > offsetTop) { //判断是否到达了顶部 this.searchBarFixed = true } else { this.searchBarFixed = false } } }
完整源代码如下:
<template> <div> <div class="nav"></div> <div class="searchBar" id="searchBar"> <ul :class="searchBarFixed == true ? 'isFixed' :''"> //用v-bind绑定样式 <li>区域<i class="iconfont icon-jiantouxia"></i></li> <li>价格<i class="iconfont icon-jiantouxia"></i></li> <li>房型<i class="iconfont icon-jiantouxia"></i></li> <li>更多<i class="iconfont icon-jiantouxia"></i></li> </ul> </div> <div class="content"> </div> </div> </template> <script> export default { components:{ }, mounted () { window.addEventListener('scroll', this.handleScroll) }, data(){ return { searchBarFixed:false } }, methods:{ handleScroll () { var scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop var offsetTop = document.querySelector('#searchBar').offsetTop if (scrollTop > offsetTop) { this.searchBarFixed = true } else { this.searchBarFixed = false } }, } } </script> <style lang="less" scope> .nav{ height: 250px; } .content{ height: 1900px; } .searchBar{ .isFixed{ position:fixed; background-color:#Fff; top:0; z-index:999; } ul { width:100%; height: 40px; line-height: 40px; display: flex; li { list-style: none; font-size: 0.8rem; text-align: center; flex: 1; i { font-size: 0.9rem; padding-left: 5px; color: #ccc; } } border-bottom: 1px solid #ddd; } } </style>
总结
以上所述是小编给大家介绍的vue实现固定位置显示功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对找一找教程网网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
这篇关于vue实现固定位置显示功能的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-30React Native常用组件-点击组件
- 2024-05-30uniapp+vue3+uv-ui手机端后台OA管理模板
- 2024-05-29Python网络爬虫的时候json=就是让你少写个json.dumps()
- 2024-05-27React Native常用组件-展示组件
- 2024-05-27React Native常用组件-列表组件
- 2024-05-09vue3开发前端表单缓存自定义指令,移动端h5必备插件
- 2024-05-09React Hooks在class组件中的使用方式
- 2024-03-30[OIDC in Action] 2. 基于OIDC(OpenID Connect)的SSO(纯JS客户端)
- 2024-03-29terraform jsonencode
- 2024-03-13vuex-persist