vue实现中部导航栏布局功能


Posted in Javascript onJuly 30, 2019

接下来是中部导航栏。我们看到这里的头像动画,和中部导航栏定位都是跟鼠标滚动有关的。我们先将布局实现一下。这里是要求在页面上部分滚动范围内,导航栏一直在div的上部,随着鼠标的滚动而改变位置。到下部分滚动范围,导航栏就一直固定到页面的上部分。

这里需要注意两个地方

这里需要一个覆盖不了的区域,可以给人一种更好开关屏的感觉。而且中部导航栏下方区域的内容,在下滑的时候不能出现在这个区域。

vue实现中部导航栏布局功能

一定要注意 尽可能的少进行DOM操作,这样是非常影响性能的 !

监听鼠标滚动事件

private fixedFlag: boolean = false;
 private unFixedFlag: boolean = true;
 private mounted() {
  window.addEventListener("scroll", this.handleScroll);
 }
 private handleScroll() {
  const scrollTop =
   window.pageYOffset ||
   document.documentElement.scrollTop ||
   document.body.scrollTop;
  if (scrollTop > 300) {
   if (!this.fixedFlag) {
    const obj = document!.getElementById("index-menu");
    const obj2 = document!.getElementById("fake-area");
    obj!.style.position = "fixed";
    obj!.style.top = "77px";
    obj2!.style.position = "fixed";
    obj2!.style.top = "47px";
    this.fixedFlag = true;
    this.unFixedFlag = false;
   }
  } else {
   if (!this.unFixedFlag) {
    const obj = document!.getElementById("index-menu");
    const obj2 = document!.getElementById("fake-area");
    obj!.style.position = "";
    obj!.style.top = "";
    obj2!.style.position = "";
    obj2!.style.top = "";
    this.unFixedFlag = true;
    this.fixedFlag = false;
   }
  }
 }

效果展示

vue实现中部导航栏布局功能

项目地址

https://github.com/pppercyWan...

总结

以上所述是小编给大家介绍的vue实现中部导航栏布局功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
JQuery 获取json数据$.getJSON方法的实例代码
Aug 02 Javascript
Jquery uploadify图片上传插件无法上传的解决方法
Dec 16 Javascript
用JavaScript实现类似于ListBox功能示例代码
Mar 09 Javascript
JQuery EasyUI 数字格式化处理示例
May 05 Javascript
一段非常简单的js判断浏览器的内核
Aug 17 Javascript
web前端开发upload上传头像js示例代码
Oct 22 Javascript
把json格式的字符串转换成javascript对象或数组的方法总结
Nov 03 Javascript
jQuery实现为table表格动态添加或删除tr功能示例
Feb 19 jQuery
vue.js多页面开发环境搭建过程
Apr 24 Javascript
详解Vue-cli3.X使用px2rem遇到的问题
Aug 09 Javascript
Javascript原型链及instanceof原理详解
May 25 Javascript
关于JavaScript中异步/等待的用法与理解
Nov 18 Javascript
js定义类的方法示例【ES5与ES6】
Jul 30 #Javascript
Javascript 对象(object)合并操作实例分析
Jul 30 #Javascript
JavaScript跳出循环的三种方法(break, return, continue)
Jul 30 #Javascript
8个有意思的JavaScript面试题
Jul 30 #Javascript
开源一个微信小程序仪表盘组件过程解析
Jul 30 #Javascript
原生js添加一个或多个类名的方法分析
Jul 30 #Javascript
vue2.0项目集成Cesium的实现方法
Jul 30 #Javascript
You might like
第十节 抽象方法和抽象类 [10]
2006/10/09 PHP
ThinkPHP跳转页success及error模板实例教程
2014/07/17 PHP
Laravel5.1框架注册中间件的三种场景详解
2019/07/09 PHP
Jquery下:nth-child(an+b)的使用注意
2011/05/28 Javascript
推荐40个非常优秀的jQuery插件和教程【系列三】
2011/11/09 Javascript
js常用代码段整理
2011/11/30 Javascript
javascript两种function的定义介绍及区别说明
2013/05/02 Javascript
基于JavaScript实现继承机制之构造函数方法对象冒充的使用详解
2013/05/07 Javascript
js获得指定控件输入光标的坐标兼容IE,Chrome,火狐等多种主流浏览器
2013/05/21 Javascript
Js表格万条数据瞬间加载实现代码
2014/02/20 Javascript
使用javascript实现雪花飘落的效果
2015/01/13 Javascript
理解javascript闭包
2015/12/15 Javascript
Javascript的表单验证-揭开正则表达式的面纱
2016/03/18 Javascript
JS读写CSS样式的方法汇总
2016/08/16 Javascript
一个极为简单的requirejs实现方法
2016/10/20 Javascript
轻松理解vue的双向数据绑定问题
2017/10/30 Javascript
Vue项目全局配置页面缓存之按需读取缓存的实现详解
2018/08/01 Javascript
微信小程序实现发送验证码按钮效果
2018/12/20 Javascript
解决layui富文本编辑器图片上传无法回显的问题
2019/09/18 Javascript
element实现合并单元格通用方法
2019/11/13 Javascript
Python里隐藏的“禅”
2014/06/16 Python
python3编写ThinkPHP命令执行Getshell的方法
2019/02/26 Python
Django ModelForm操作及验证方式
2020/03/30 Python
瑞典的玛丽小姐:Miss Mary of Sweden
2019/02/13 全球购物
linux系统都有哪些运行级别
2016/03/26 面试题
英文版餐饮运营管理求职信
2013/11/06 职场文书
行政办公员自我评价分享
2013/12/14 职场文书
五年级音乐教学反思
2014/02/06 职场文书
店面销售职位的职责
2014/03/09 职场文书
我的中国梦演讲稿1000字
2014/08/19 职场文书
十佳家长事迹材料
2014/08/26 职场文书
中秋晚会活动方案
2014/08/31 职场文书
客户经理岗位职责大全
2015/04/09 职场文书
销区经理年终述职报告模板
2019/11/28 职场文书
详解如何在Canvas中添加事件的方法
2021/04/17 Javascript
golang goroutine顺序输出方式
2021/04/29 Golang