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 改变CSS样式基础代码
Feb 11 Javascript
基于jQuery的公告无限循环滚动实现代码
May 11 Javascript
js关闭子窗体刷新父窗体实现方法
Dec 04 Javascript
js获取当月最后一天实例代码
Nov 19 Javascript
Jquery中使用show()与hide()方法动画显示和隐藏图片
Oct 08 Javascript
基于jQuery和CSS3制作响应式水平时间轴附源码下载
Dec 20 Javascript
Javascript基础之数组的使用
May 13 Javascript
Vue.js bootstrap前端实现分页和排序
Mar 10 Javascript
js 获取元素的具体样式信息getcss(实例讲解)
Jul 05 Javascript
vue elementui form表单验证的实现
Nov 11 Javascript
详解小程序input框失焦事件在提交事件前的处理
May 05 Javascript
详解JavaScript作用域 闭包
Jul 29 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
探讨php中防止SQL注入最好的方法是什么
2013/06/10 PHP
PHPUnit安装及使用示例
2014/10/29 PHP
PHP提示Warning:phpinfo() has been disabled函数禁用的解决方法
2014/12/17 PHP
php上传中文文件名乱码问题处理方案
2015/02/03 PHP
php生成过去100年下拉列表的方法
2015/07/20 PHP
浅析PHP类的反射来实现依赖注入过程
2018/02/06 PHP
比较详细的关于javascript中void(0)的具体含义解释
2007/08/02 Javascript
5个最佳的Javascript日期处理类库分享
2012/04/15 Javascript
基于jquery中children()与find()的区别介绍
2013/04/26 Javascript
form表单只提交数据而不进行页面跳转的解决方案
2013/09/18 Javascript
浏览器兼容console对象的简要解决方案分享
2013/10/24 Javascript
js中函数调用的两种常用方法使用介绍
2014/07/17 Javascript
nodejs URL模块操作URL相关方法介绍
2015/03/03 NodeJs
Js数组排序函数sort()介绍
2015/06/08 Javascript
在JavaScript应用中实现延迟加载的方法
2015/06/25 Javascript
JS面向对象编程详解
2016/03/06 Javascript
Bootstrap教程JS插件滚动监听学习笔记分享
2016/05/18 Javascript
jQuery事件委托之Safari
2016/07/05 Javascript
js实现背景图自适应窗口大小
2017/01/10 Javascript
使用nvm管理不同版本的node与npm的方法
2017/10/31 Javascript
jsonp跨域获取百度联想词的方法分析
2019/05/13 Javascript
基于vue-cli3和element实现登陆页面
2019/11/13 Javascript
js实现表格单列按字母排序
2020/08/12 Javascript
python&amp;MongoDB爬取图书馆借阅记录
2016/02/05 Python
Python 模拟购物车的实例讲解
2017/09/11 Python
python并发编程多进程 模拟抢票实现过程
2019/08/20 Python
PyCharm 2020.2.2 x64 下载并安装的详细教程
2020/10/15 Python
会计专业应届生求职信
2013/11/24 职场文书
大学生自我鉴定范文模板
2014/01/21 职场文书
九月份红领巾广播稿
2014/01/22 职场文书
机电一体化毕业生自荐信
2014/06/19 职场文书
改作风抓落实促发展心得体会
2014/09/10 职场文书
高中生第一学年自我鉴定
2014/09/12 职场文书
2015年党员个人剖析材料
2014/12/18 职场文书
用电申请报告范文
2015/05/18 职场文书
使用HttpSessionListener监听器实战
2022/03/17 Java/Android