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 无废话系列教程(二) jquery实战篇上
Jun 23 Javascript
poshytip 基于jquery的 插件 主要用于显示微博人的图像和鼠标提示等
Oct 12 Javascript
详解js闭包
Sep 02 Javascript
动态加载js的方法汇总
Feb 13 Javascript
纯JavaScript实现的分页插件实例
Jul 14 Javascript
微信小程序组件之srcoll-view的详解
Oct 19 Javascript
javascript按钮禁用和启用的效果实例代码
Oct 29 Javascript
Vue DevTools调试工具的使用
Dec 05 Javascript
JavaScript 数组去重并统计重复元素出现的次数实例
Dec 14 Javascript
js操作二进制数据方法
Mar 03 Javascript
浅析java线程中断的办法
Jul 29 Javascript
VSCode 添加自定义注释的方法(附带红色警戒经典注释风格)
Aug 27 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
BBS(php &amp; mysql)完整版(七)
2006/10/09 PHP
WordPress中制作导航菜单的PHP核心方法讲解
2015/12/11 PHP
完美解决在ThinkPHP控制器中命名空间的问题
2017/05/05 PHP
使用PHPExcel导出Excel表
2018/09/08 PHP
PHP使用Session实现上传进度功能详解
2019/08/06 PHP
ExtJS Store的数据访问与更新问题
2010/04/28 Javascript
如何让easyui gridview 宽度自适应窗口改变及fitColumns应用
2013/01/25 Javascript
jQuery之选项卡的简单实现
2014/02/28 Javascript
javascript修改图片src的方法
2015/01/27 Javascript
js+HTML5基于过滤器从摄像头中捕获视频的方法
2015/06/16 Javascript
基于Bootstrap模态对话框只加载一次 remote 数据的解决方法
2017/07/09 Javascript
Node.js中DNS模块学习总结
2018/02/28 Javascript
基于ionic实现下拉刷新功能
2018/05/10 Javascript
vue中使用axios post上传头像/图片并实时显示到页面的方法
2018/09/27 Javascript
使用weixin-java-miniapp配置进行单个小程序的配置详解
2019/03/29 Javascript
Vue Extends 扩展选项用法完整实例
2019/09/17 Javascript
Vue实现input宽度随文字长度自适应操作
2020/07/29 Javascript
Python中使用urllib2防止302跳转的代码例子
2014/07/07 Python
python使用chardet判断字符串编码的方法
2015/03/13 Python
python MySQLdb Windows下安装教程及问题解决方法
2015/05/09 Python
Python可变参数用法实例分析
2017/04/02 Python
python实现求最长回文子串长度
2018/01/22 Python
Python使用爬虫爬取静态网页图片的方法详解
2018/06/05 Python
Ubuntu下Python2与Python3的共存问题
2018/10/31 Python
python使用paramiko实现ssh的功能详解
2020/03/06 Python
Python类和实例的属性机制原理详解
2020/03/21 Python
Python ADF 单位根检验 如何查看结果的实现
2020/06/03 Python
python 5个实用的技巧
2020/09/27 Python
Scotch Porter官方网站:男士美容产品
2020/08/31 全球购物
init进程的作用
2015/08/20 面试题
汽修专业学生自我鉴定
2013/11/16 职场文书
工业自动化专业自荐信范文
2014/04/10 职场文书
2015年元旦活动总结
2014/05/09 职场文书
本科毕业论文导师评语
2014/12/31 职场文书
企业党员岗位承诺书
2015/04/27 职场文书