vue 中固定导航栏的实例代码


Posted in Javascript onNovember 01, 2019

点击按钮回顶

<template lang="html">

 <div class="gotop-box">
 <i @click="gotop"class="icon topIcon"></i>
 </div>
</template>

<script>

export default {

methods: {

 gotop: function () { // 点击回顶按钮 返回顶部
  setTimeout(()=>{
  document.body.scrollTop = 0
  document.documentElement.scrollTop = 0
  },1000)
 }
 }
}
window.onscroll = function() {
const scrollTop = document.documentElement.scrollTop || document.body.scrollTop
 const goTop= document.querySelector('.gotop-box')
  if (scrollTop >200) {
   goTop.style.display = 'block'
  } else {
   goTop.style.display = 'none'
  }
}
</script>


<style lang="css">
.topIcon {
 position: fixed;
 bottom: 5rem;
 right: 1rem;
 width: 2rem;
 height: 2rem;
 border-radius: 50%;
 background:url(../assets/images/gotop.png)center center no-repeat;
 background-size: cover;
}
</style>

vue 中固定导航栏的实例代码

vue 中固定导航栏的实例代码

固定导航栏案例

<template> 
 <div>
  <div id="topPart">顶部距离</div>
  <div id="navBar" :class="{isFixed:istabBar}">固定导航栏</div>
  <div id="mainPart">
   <ul>
    <li>内容部分</li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
   </ul>
  </div>
 </div>
</template>


<script>
 export default {
  data () {
   return {
    istabBar: false
   }
  },
  methods: {
   // 添加一个方法 兼容
   handleScroll () {
    let scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop;
      
     // 固定导航栏
     let topBar = document.querySelector("#topPart");
     let navBar = document.querySelector("#navBar");
     let mainPart = document.querySelector("#mainPart");
     if (scrollTop > topBar.offsetHeight){
      this.istabBar = true
      mainPart.style.paddingTop = navBar.offsetHeight + "px";
     } else {
      this.istabBar = false
      mainPart.style.paddingTop = "0px";
     }
   }
  },
  mounted () {
   window.addEventListener('scroll', this.handleScroll); // Dom树加载完毕
  },
  destroyed () {
   window.removeEventListener('scroll', this.handleScroll) // 销毁页面时清除
  }
 }
</script>


<style> 
 #topPart{
  width: 100%;
  height: 100px;
  background-color: yellow;
 }
 .isFixed {
  position: fixed;
  top: 0;
  z-index: 10;
 }
 #navBar {
  width: 100%;
  height: 50px;
  background-color: red;
 }
 #mainPart {
  width: 100%;
 }
 #mainPart ul {
  width: 100%;
 }
 #mainPart ul li {
  width: 100%;
  height: 40px;
  background-color: orange;
  margin-bottom: 10px;
 }
</style>

vue 中固定导航栏的实例代码

以上这篇vue 中固定导航栏的实例代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery多浏览器捕捉回车事件代码
Jun 22 Javascript
Angular 根据 service 的状态更新 directive
Apr 03 Javascript
JavaScript 闭包详细介绍
Sep 28 Javascript
vuex实现简易计数器
Oct 27 Javascript
JS定时器实现数值从0到10来回变化
Dec 09 Javascript
关于js对textarea换行符的处理方法浅析
Aug 03 Javascript
JS Object.preventExtensions(),Object.seal()与Object.freeze()用法实例分析
Aug 25 Javascript
优雅地使用loading(推荐)
Apr 20 Javascript
layUI使用layer.open,在content打开数据表格,获取值并返回的方法
Sep 26 Javascript
keep-alive不能缓存多层级路由菜单问题解决
Mar 10 Javascript
解决Vue中的生命周期beforeDestory不触发的问题
Jul 21 Javascript
javascript实现点击产生随机图形
Jan 25 Javascript
vue中beforeRouteLeave实现页面回退不刷新的示例代码
Nov 01 #Javascript
vue自定义switch开关组件,实现样式可自行更改
Nov 01 #Javascript
Vue实现导航栏的显示开关控制
Nov 01 #Javascript
详解Vue后台管理系统开发日常总结(组件PageHeader)
Nov 01 #Javascript
vue设置导航栏、侧边栏为公共页面的例子
Nov 01 #Javascript
Vue中jsx不完全应用指南小结
Nov 01 #Javascript
vue导航栏部分的动态渲染实例
Nov 01 #Javascript
You might like
声音就能俘获人心,蕾姆,是哪个漂亮小姐姐配音呢?
2020/03/03 日漫
php从文件夹随机读取文件的方法
2015/06/01 PHP
php实现仿写CodeIgniter的购物车类
2015/07/29 PHP
PHP的邮件群发系统phplist配置方法详细总结
2016/03/30 PHP
PHP chop()函数讲解
2019/02/11 PHP
php中关于换行的实例写法
2019/09/26 PHP
vs2003 js文件编码问题的解决方法
2010/03/20 Javascript
基于jquery的jqDnR拖拽溢出的修改
2011/02/12 Javascript
dojo学习第一天 Tab选项卡 实现
2011/08/28 Javascript
js数组的基本用法及数组根据下标(数值或字符)移除元素
2013/10/20 Javascript
tuzhu_req.js 实现仿百度图片首页效果
2015/08/11 Javascript
微信开发 使用picker封装省市区三级联动模板
2016/10/28 Javascript
jQuery自定义组件(导入组件)
2016/11/08 Javascript
通过示例彻底搞懂js闭包
2017/08/10 Javascript
React中常见的动画实现的几种方式
2018/01/10 Javascript
深入浅出理解JavaScript高级定时器原理与用法
2018/08/02 Javascript
关于vue状态过渡transition不起作用的原因解决
2019/04/09 Javascript
在 Vue 中使用 JSX 及使用它的原因浅析
2020/02/10 Javascript
Vue 如何使用props、emit实现自定义双向绑定的实现
2020/06/05 Javascript
js实现弹窗效果
2020/08/09 Javascript
python批量实现Word文件转换为PDF文件
2018/03/15 Python
python使用pymongo操作mongo的完整步骤
2019/04/13 Python
Python Django基础二之URL路由系统
2019/07/18 Python
Anaconda之conda常用命令介绍(安装、更新、删除)
2019/10/06 Python
python实现mask矩阵示例(根据列表所给元素)
2020/07/30 Python
Python3 pyecharts生成Html文件柱状图及折线图代码实例
2020/09/29 Python
分布式全文检索引擎ElasticSearch原理及使用实例
2020/11/14 Python
CSS3制作3D立方体loading特效
2020/11/09 HTML / CSS
HTML5如何实现元素拖拽
2016/03/11 HTML / CSS
最新优秀教师个人先进事迹材料
2014/05/06 职场文书
政风行风整改报告
2014/11/06 职场文书
会计师事务所实习证明
2014/11/16 职场文书
认真学习保证书
2015/02/26 职场文书
年终工作总结范文
2019/06/20 职场文书
Ajax实现三级联动效果
2021/10/05 Javascript
win10如何开启ahci模式?win10开启ahci模式详细操作教程
2022/07/23 数码科技