jquery实现楼层滚动效果


Posted in jQuery onJanuary 01, 2018

本文实例为大家分享了jquery实现楼层滚动效果展示的具体代码,供大家参考,具体内容如下

html:

<!DOCTYPE html> 
<html lang="en"> 
<head> 
  <meta charset="UTF-8"> 
  <title>Document</title> 
  <link rel="stylesheet" href="css/base.css" rel="external nofollow" > 
  <style> 
    #header,#f1,#f2,#f3{ 
      width: 80%; 
      height: 500px; 
      background: yellow; 
      margin-left: 10%; 
      margin-top: 50px; 
    } 
    #f1{ 
      background: green; 
    } 
    #f2{ 
      background: red; 
    } 
    #f3{ 
      background: blue; 
    } 
    #lift{ 
      position: fixed; 
      top: 280px; 
      display: none; 
    } 
    .lift_btn{ 
      display: inline-block; 
      width: 50px; 
      height: 50px; 
      border: 1px solid #000; 
    } 
    .hover{ 
      background: red; 
    } 
  </style> 
</head> 
<body> 
  <div id="header"></div> 
  <div class="floor" id="f1"> 
    <p>第一层</p> 
  </div> 
  <div class="floor" id="f2"> 
    <p>第二层</p> 
  </div> 
  <div class="floor" id="f3"> 
    <p>第三层</p> 
  </div> 
  <div id="lift"> 
    <ul> 
      <li class="lift_item"> 
        <a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" class="lift_btn"> 
          <span>1</span> 
        </a> 
      </li> 
      <li class="lift_item"> 
        <a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" class="lift_btn"> 
          <span>2</span> 
        </a> 
      </li> 
      <li class="lift_item"> 
        <a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" class="lift_btn"> 
          <span>3</span> 
        </a> 
      </li> 
    </ul> 
  </div> 
 
  <script src="js/jquery.min.js"></script> 
  <script src="js/floor.js"></script> 
</body> 
</html>

js:

(()=>{ 
  var $lift=$("#lift"); 
  $(window).scroll(()=>{ 
    var scrollTop=$('html,body').scrollTop(); 
    var $f1=$("#f1"); 
    var offsetTop=$f1.offset().top; 
    if(offsetTop<scrollTop+innerHeight/2) 
      $lift.fadeIn(500); 
    else 
      $lift.fadeOut(500); 
    var $floors=$(".floor"); 
    $floors.each((i,elem)=>{ 
      var $f=$(elem); 
      if($f.offset().top<scrollTop+innerHeight/2) 
        $lift.find(".lift_item:eq("+i+")").addClass("hover").siblings().removeClass("hover"); 
    }); 
  }); 
 
  $lift.children("ul").on("click","li",function(){ 
    var $li=$(this); 
    var i=$li.index(); 
    var $fi=$(".floor:eq("+i+")"); 
    var offsetTop=$fi.offset().top; 
    $("html").animate({ 
      scrollTop:offsetTop-60 
    },500) 
  }) 
})();

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

jQuery 相关文章推荐
jquery请求servlet实现ajax异步请求的示例
Jun 03 jQuery
jQuery正则验证注册页面经典实例
Jun 10 jQuery
如何将 jQuery 从你的 Bootstrap 项目中移除(取而代之使用Vue.js)
Jul 17 jQuery
jQuery列表检索功能实现代码
Jul 17 jQuery
jQuery扇形定时器插件pietimer使用方法详解
Jul 18 jQuery
使用jQuery实现购物车结算功能
Aug 15 jQuery
jQuery 1.9版本以上的浏览器判断方法代码分享
Aug 28 jQuery
jQuery实现文件编码成base64并通过AJAX上传的方法
Apr 12 jQuery
关于jquery layui弹出层的使用方法
Apr 21 jQuery
jQuery.extend 与 jQuery.fn.extend的用法及区别实例分析
Jul 25 jQuery
为jquery的ajax请求添加超时timeout时间的操作方法
Sep 04 jQuery
jQuery实现电梯导航模块
Dec 22 jQuery
jquery实现左右轮播切换效果
Jan 01 #jQuery
jQuery中ajax获取数据赋值给页面的实例
Dec 31 #jQuery
jQuery实现页码跳转式动态数据分页
Dec 31 #jQuery
CSS3结合jQuery实现动画效果及回调函数的实例
Dec 27 #jQuery
使用jQuery 操作table 完成单元格合并的实例
Dec 27 #jQuery
jQuery图片查看插件Magnify开发详解
Dec 25 #jQuery
jQuery实现右侧抽屉式在线客服功能
Dec 25 #jQuery
You might like
php学习笔记 PHP面向对象的程序设计
2011/06/13 PHP
浅析HTTP消息头网页缓存控制以及header常用指令介绍
2013/06/28 PHP
PHP程序员不应该忽略的3点
2015/10/09 PHP
PHP使用MPDF类生成PDF的方法
2015/12/08 PHP
Yii框架引用插件和ckeditor中body与P标签去除的方法
2017/01/19 PHP
js自执行函数的几种不同写法的比较
2012/08/16 Javascript
Node.js开发之访问Redis数据库教程
2015/01/14 Javascript
JS实现来回出现文字的状态栏特效代码
2015/10/31 Javascript
清除js缓存的多种方法总结
2016/12/09 Javascript
详解Bootstrap各式各样的按钮(推荐)
2016/12/13 Javascript
Bootstrap CSS组件之导航(nav)
2016/12/17 Javascript
Angular2 父子组件数据通信实例
2017/06/22 Javascript
深入理解Vue生命周期、手动挂载及挂载子组件
2017/09/27 Javascript
[03:41]2018完美盛典-《Fight With Us》
2018/12/16 DOTA
[01:30:15]DOTA2-DPC中国联赛 正赛 Ehome vs Aster BO3 第二场 2月2日
2021/03/11 DOTA
Python装饰器decorator用法实例
2014/11/10 Python
Python爬取网易云音乐上评论火爆的歌曲
2017/01/19 Python
python使用jieba实现中文分词去停用词方法示例
2018/03/11 Python
对Python之gzip文件读写的方法详解
2019/02/08 Python
python之pyqt5通过按钮改变Label的背景颜色方法
2019/06/13 Python
python实现获取单向链表倒数第k个结点的值示例
2019/10/24 Python
jupyter notebook 使用过程中python莫名崩溃的原因及解决方式
2020/04/10 Python
pycharm下pyqt4安装及环境配置的教程
2020/04/24 Python
Keras 加载已经训练好的模型进行预测操作
2020/06/17 Python
6号汽车旅馆预订:Motel 6
2018/02/11 全球购物
New Balance俄罗斯官方网上商店:购买运动鞋
2020/03/02 全球购物
个人作风剖析材料
2014/02/02 职场文书
不拖欠农民工工资承诺书
2014/03/31 职场文书
运动会演讲稿
2014/05/07 职场文书
综合素质评价个性与发展自我评价
2015/03/06 职场文书
2016年公共机构节能宣传周活动总结
2016/04/05 职场文书
经典法律座右铭(50句)
2019/08/15 职场文书
nginx请求限制配置方法
2021/07/09 Servers
nginx中proxy_pass各种用法详解
2021/11/07 Servers
Vue组件更新数据v-model不生效的解决
2022/04/02 Vue.js
vue实现列表垂直无缝滚动
2022/04/08 Vue.js