jquery实现吸顶导航效果


Posted in jQuery onJanuary 08, 2020

本文实例为大家分享了jquery实现吸顶导航效果的具体代码,供大家参考,具体内容如下

css:

*{margin:0;padding:0;}
 body{
 margin:0 auto;
   max-width:10rem;
 }
 header{
 width:10rem;
 height:1rem;
 background:red;
 position:fixed;
 top:0;
 left:auto;
 }
 section{
 height:100%;
 overflow: auto;
 padding:1rem 0;
 }
 .bananers{
 width:100%;
 height:3rem;
 text-align: center;
 line-height:3rem;
 background: aqua;
 }
 .mains{
 width:100%;
 height:1rem;
 background:red;
 display: flex;
 }
 .mains>div{
 width:100%;
 height:100%;
 border:1px solid #dddddd;
 display: flex;
 align-items: center;
 justify-content: center;
 }
 .contents{
 width:100%;
 }
 .contents>div{
 height:50px;
 line-height:50px;
 padding-left:10%;
 border-bottom:1px solid red;
 }
 footer{
 width:10rem;
 height:1rem;
 background: #0086B3;
 position:fixed;
 left:auto;
 bottom:0;
 }
  .fixed-top {
    position: fixed;
    width: 100%;
    top:1rem;
    left:auto;
  }
  .sticky {
    position: -webkit-sticky;/*滚过初始位置时自动吸顶*/
    position: sticky;/*吸顶时的定位*/
    top:1rem;
    left:auto;
    z-index: 999;/*z-index比下方所有层级要高*/
  }

html:

<header>头部</header>
<section>
  <div class="bananers">内容</div>
  <div class="mains">
  <div>导航1</div>
  <div>导航2</div>
  <div>导航3</div>
  </div>
  <div class="contents"></div>
</section>
<footer>页脚</footer>

js:

for(var i=0;i<20;i++){
 $(".contents").append(`<div>${i+1}</div>`)
 }
 var headers=$("header")[0].getBoundingClientRect().height;
 var mains=$(".mains").offset().top;
 var heights=mains-headers;
 $(".bananers").html(mains+"----"+headers);
 var tops = document.querySelector('.mains');
 function fixed(num) {
    var nys= navigator.userAgent;
    var isAndroid = nys.indexOf('Android') > -1 || nys.indexOf('Adr') > -1; 
    var isIOS = !!nys.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); 
    if(isAndroid) {
      document.body.onscroll = function(e) {
        var scrollT = document.body.scrollTop;
        if (scrollT > num) {
          $(tops).addClass('fixed-top');
        }else {
          $(tops).removeClass('fixed-top');
        }
      };
    }else if(isIOS) {
      $(tops).addClass('sticky');
    }
  }
fixed(heights);

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

jQuery 相关文章推荐
jquery 禁止鼠标右键并监听右键事件
Apr 27 jQuery
jQuery异步提交表单实例
May 30 jQuery
JQuery 获取Dom元素的实例讲解
Jul 08 jQuery
JavaScript之事件委托实例(附原生js和jQuery代码)
Jul 22 jQuery
jQuery图片缩放插件smartZoom使用实例详解
Aug 25 jQuery
jQuery+SpringMVC中的复选框选择与传值实例
Jan 08 jQuery
jQuery实现的鼠标响应缓冲动画效果示例
Feb 13 jQuery
jQuery实现的点击标题文字切换字体效果示例【测试可用】
Apr 26 jQuery
JQuery常见节点操作实例分析
May 15 jQuery
jQuery中DOM常见操作实例小结
Aug 01 jQuery
jQuery实现简单聊天室
Feb 08 jQuery
jQuery实现的移动端图片缩放功能组件示例
May 01 jQuery
基于jQuery实现挂号平台首页源码
Jan 06 #jQuery
详解jQuery中的prop()使用方法
Jan 05 #jQuery
jQuery 选择器用法基础入门示例
Jan 04 #jQuery
jQuery实现的图片点击放大缩小功能案例
Jan 02 #jQuery
jQuery模仿ToDoList实现简单的待办事项列表
Dec 30 #jQuery
jQuery+PHP+Ajax实现动态数字统计展示功能
Dec 25 #jQuery
JQuery常用选择器功能与用法实例分析
Dec 23 #jQuery
You might like
用PHP实现将GB编码转换为UTF8
2006/11/25 PHP
用phpmyadmin更改mysql5.0登录密码
2008/03/25 PHP
PHP iconv 函数转gb2312的bug解决方法
2009/10/11 PHP
使用phpexcel类实现excel导入mysql数据库功能(实例代码)
2016/05/12 PHP
yii2 上传图片的示例代码
2018/11/02 PHP
脚本安需导入(装载)的三种模式的对比
2007/06/24 Javascript
javascript一个无懈可击的实例化XMLHttpRequest的方法
2010/10/13 Javascript
js实现按一下删除键删除整个单词附demo
2014/09/05 Javascript
jQuery中outerHeight()方法用法实例
2015/01/19 Javascript
javascript实现图片跟随鼠标移动效果的方法
2015/05/13 Javascript
JavaScript中停止执行setInterval和setTimeout事件的方法
2015/05/14 Javascript
JavaScript实现的浮动层框架用法实例分析
2015/10/10 Javascript
JavaScript判断页面加载完之后再执行预定函数的技巧
2016/05/17 Javascript
详解JavaScript中双等号引起的隐性类型转换
2016/05/30 Javascript
15款最好的Bootstrap在线编辑器
2016/08/03 Javascript
JavaScript闭包的简单应用
2017/09/01 Javascript
利用JavaScript的%做隔行换色的实例
2017/11/25 Javascript
js实现简单分页导航栏效果
2019/06/28 Javascript
JavaScript检测浏览器是否支持CSS变量代码实例
2020/04/03 Javascript
[03:43]2014DOTA2西雅图国际邀请赛 newbee战队巡礼
2014/07/07 DOTA
为Python的web框架编写前端模版的教程
2015/04/30 Python
Python实现高效求解素数代码实例
2015/06/30 Python
wxPython之解决闪烁的问题
2018/01/15 Python
pandas实现将日期转换成timestamp
2019/12/07 Python
Python列表切片常用操作实例解析
2020/03/10 Python
django 解决扩展自带User表遇到的问题
2020/05/14 Python
python中sklearn的pipeline模块实例详解
2020/05/21 Python
美国咖啡批发网站:Coffee.org
2017/06/29 全球购物
几个数据库方面的面试题
2016/07/01 面试题
中学生团员自我评价分享
2013/12/07 职场文书
初中学校军训方案
2014/05/09 职场文书
工作推荐信范文
2014/05/10 职场文书
投资意向书
2014/07/30 职场文书
员工激励培训演讲稿
2014/09/16 职场文书
2015小学新教师个人工作总结
2015/10/14 职场文书
Go语言中break label与goto label的区别
2021/04/28 Golang