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监听扫码枪输入并禁止手动输入的实现方法(推荐)
Mar 21 jQuery
jQuery实现分页功能(含ajax请求、后台数据、附完整demo)
Apr 03 jQuery
jquery 一键复制到剪切板的实例
Sep 20 jQuery
jQuery实现的简单对话框拖动功能示例
Jun 05 jQuery
jquery 通过ajax请求获取后台数据显示在表格上的方法
Aug 08 jQuery
jQuery md5加密插件jQuery.md5.js用法示例
Aug 24 jQuery
jQuery 点击获取验证码按钮及倒计时功能
Sep 20 jQuery
jQuery实现购物车的总价计算和总价传值功能
Nov 28 jQuery
jquery+css实现Tab栏切换的代码实例
May 14 jQuery
jQuery删除/清空指定元素的所有子节点实例代码
Jul 04 jQuery
jquery获取并修改触发事件的DOM元素示例【基于target 属性】
Oct 10 jQuery
jQuery实现手风琴效果(蒙版)
Jan 11 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
mysql时区问题
2008/03/26 PHP
PHP中基本HTTP认证技巧分析
2015/03/16 PHP
php封装db类连接sqlite3数据库的方法实例
2017/12/19 PHP
Javascript里使用Dom操作Xml
2007/01/22 Javascript
Prototype源码浅析 String部分(一)之有关indexOf优化
2012/01/15 Javascript
jQuery网页版打砖块小游戏源码分享
2015/08/20 Javascript
基于JS实现的笛卡尔乘积之商品发布
2016/05/13 Javascript
jQuery生成假加载动画效果
2016/12/01 Javascript
利用JQuery实现datatables插件的增加和删除行功能
2017/01/06 Javascript
微信小程序 按钮滑动的实现方法
2017/09/27 Javascript
浅析vue 函数配置项watch及函数 $watch 源码分享
2018/11/22 Javascript
NUXT SSR初级入门笔记(小结)
2019/12/16 Javascript
js实现点赞按钮功能的实例代码
2020/03/06 Javascript
微信小程序通过websocket实时语音识别的实现代码
2020/08/19 Javascript
vue+Element-ui实现登录注册表单
2020/11/17 Javascript
[01:00:30]TFT vs VGJ.T Supermajor 败者组 BO3 第一场 6.5
2018/06/06 DOTA
python每次处理固定个数的字符的方法总结
2013/01/29 Python
Python模块包中__init__.py文件功能分析
2016/06/14 Python
python with提前退出遇到的坑与解决方案
2018/01/05 Python
python+os根据文件名自动生成文本
2019/03/21 Python
python+opencv实现摄像头调用的方法
2019/06/22 Python
Python+OpenCV实现旋转文本校正方式
2020/01/09 Python
快速查找Python安装路径方法
2020/02/06 Python
Python tkinter制作单机五子棋游戏
2020/09/14 Python
Selenium执行完毕未关闭chromedriver/geckodriver进程的解决办法(java版+python版)
2020/12/07 Python
利用Python实现最小二乘法与梯度下降算法
2021/02/21 Python
Cotton On南非:澳洲时尚平价品牌
2018/06/28 全球购物
戛纳奢侈品商店:Jacques Loup法国
2019/11/04 全球购物
最畅销的视频游戏享受高达90%的折扣:CDKeys
2020/02/10 全球购物
C++如何引用一个已经定义过的全局变量
2014/08/25 面试题
国际会议邀请函范文
2014/01/16 职场文书
2014大学生中国梦主题教育学习思想汇报
2014/09/10 职场文书
2016年小学六一儿童节活动总结
2016/04/06 职场文书
优胜劣汰,强者为王——读《鲁滨逊漂流记》有感
2019/08/15 职场文书
发工资啦!教你用Python实现邮箱自动群发工资条
2021/05/10 Python
我对PyTorch dataloader里的shuffle=True的理解
2021/05/20 Python