<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style>
* {margin: 0; padding: 0; border: none;}
ul,li {list-style: none;} #loutiNav {
position: fixed;
left: 40px;
top: 25%;
width: 30px;
border: 1px solid black;
background:pink;
}
#loutiNav li {
width: 30px;
height: 29px;
border-bottom: 1px dashed white;
font-size: 14px;
text-align: center;
line-height: 29px;
position: relative;
cursor: pointer;
}
#loutiNav li span {
display: none;
position: absolute;
left: 0;
top: 0;
width: 30px;
height: 29px;
background: white;
}
#loutiNav li:hover span{
display: block;
background: darkred;
color: white;
}
#loutiNav li span.active {
display: block;
background: white;
color: darkred;
} #head, #main div, #foot {
width: 1000px;
height: 600px;
font-size: 100px;
text-align: center;
line-height: 600px;
margin: 0 auto;
} </style>
<script src="js/jquery-1.12.3.js"></script>
<script>
$(function(){ var isMoving = false; //是否点击了按钮页面正在动画移动 $("#loutiNav li").click(function(){ //改变按钮的选中状态
$(this).find("span").addClass("active")
.parent().siblings().find("span").removeClass("active"); //移动页面到对应的楼层
var index = $(this).index();
var _top = $(".louti").eq(index).offset().top; //$(window).scrollTop(_top);
isMoving = true;
$("html, body").stop().animate({scrollTop:_top}, 400, function(){
isMoving = false;
});
}) //滚动事件
$(window).scroll(function(){ if ( !isMoving ) {
var scrollTop = $(window).scrollTop(); //遍历所有楼层
var index = 0;
$(".louti").each(function(){
if ( scrollTop >= $(this).offset().top ){
//console.log( $(this).index() );
index = $(this).index();
}
})
//console.log(index); $("#loutiNav li").eq(index).find("span").addClass("active")
.parent().siblings().find("span").removeClass("active");
}
}) })
</script>
</head>
<body>
<div id="loutiNav">
<ul>
<li>1F<span class="active">服饰</span></li>
<li>2F<span>美妆</span></li>
<li>3F<span>手机</span></li>
<li>4F<span>家电</span></li>
<li>5F<span>数码</span></li>
<li>6F<span>运动</span></li>
<li>7F<span>居家</span></li>
<li>8F<span>母婴</span></li>
<li>9F<span>食品</span></li>
<li>10F<span>图书</span></li>
<li>11F<span>服务</span></li>
</ul>
</div> <div id="head" style="background: #008800;">头部</div>
<div id="main">
<div class="louti" style="background: #666699;">1F服饰</div>
<div class="louti" style="background: #66FF99;">2F美妆</div>
<div class="louti" style="background: #33CC99;">3F手机</div>
<div class="louti" style="background: #663399;">4F家电</div>
<div class="louti" style="background: #669966;">5F数码</div>
<div class="louti" style="background: #99FF99;">6F运动</div>
<div class="louti" style="background: #33FF99;">7F居家</div>
<div class="louti" style="background: #66CC99;">8F母婴</div>
<div class="louti" style="background: #663377;">9F食品</div>
<div class="louti" style="background: #666666;">10F图书</div>
<div class="louti" style="background: #9999FF;">11F服务</div>
</div>
<div id="foot" style="background: #008800;">尾部</div> </body>
</html>

jq-demo-楼梯效果的更多相关文章

  1. JQ实现弹幕效果

    JQ实现弹幕效果,快来吐糟你的想法吧 效果图: 代码如下,复制即可使用: <!DOCTYPE html> <html> <head> <meta charse ...

  2. 修改css样式+jq中的效果+属性操作+元素操作

    :checked    选框选中的 一.修改css样式: 1.参数只写属性名,则返回属性值 $(this).css( ' color ');   //300px 2.参数是属性名,属性值,逗号分隔,是 ...

  3. jq demo 简单的图片懒加载效果

    重点:在元素进入可视区域后,把图片元素的 _src 的值,赋值给 src <!DOCTYPE HTML> <html> <head> <meta http-e ...

  4. jq demo—图片翻页展示效果 animate()动画

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  5. 今天讲的是JQ 的动画效果

    老规矩,先贴代码 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> < ...

  6. js控制页面每次滚动一屏,和楼梯效果

    我最近在做我们公司官网的改版,产品中心就是每次滚一屏的,我觉得加上楼梯更方便用户浏览,就随便写了个demo, 先来看看结构,都很简单的 <!--楼梯--> <ul class=&qu ...

  7. 微信小程序-自定义菜单导航(实现楼梯效果)

    设计初衷 在开发页面时,往往需要实现,点击页面的导航菜单页面滚动到相应位置,滚动页面实现菜单选项的高亮.在html开发中,我们可以用到a标签锚点实现,jq的动画相结合实现类似效果.在框架中vant U ...

  8. jQ模拟打字效果插件typetype

    typetype是一个jquery插件,可以模拟人类的打字效果. 效果图如下所示: 查看演示 http://weber.pub/demo/160828/jQuery.Type/jQuery.type. ...

  9. jq菜单折叠效果

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  10. [锋利的JQ]-超链接提示效果

    关键知识点: 1.事件对象:当事件一旦被触发,事件对象便会创立.事件对象只能作用于该事件的事件处理程序. 2.认识了mousemove事件了连续触发执行的特性. 代码: HTML: <div c ...

随机推荐

  1. 翻译 What is the concept of Service Container in Laravel?

    原文链接: https://stackoverflow.com/questions/37038830/what-is-the-concept-of-service-container-in-larav ...

  2. 第一章 笔记本电脑安装Linux系统(Centos7)

    目标:通过[Linux+Docke+Nginx+Jenkins+k8s(Kubernetes)+CICD(自动化)]进行项目部署 内容:根据个人进度实时分章节记录自己所遇到的问题 一.准备工作 1.下 ...

  3. OK。第一个shell script 脚本

    很简单吧.也很容易理解.读取两个字符放到变量firstname和lastname中,然后输出 编辑日期格式 上面是编辑日期格式.下面的例题是按照日期格式来分类创建文件

  4. struct解决socket黏包问题 (指令传输)

    服务端代码如下 import struct import subprocess import socket server = socket.socket() server.bind(()) serve ...

  5. vCenter 6.0 vsca 安装遇到的一些小问题

    在安装vCenter 6.0 vsca的时候,安装插件到第二个的时候,会报出一个windows installer的错误.需要联系软件管理员或者技术支持的一个error. 经过多次的测试,我终于找到了 ...

  6. sqldeveloper全部导出

    点击Tools--Export User Objects 这种方式可以导出当前用户拥有的所有对象,包括表.视图.触发器.同义词等等,对于表,只能导出表结构(建表语句),不能导出数据, 选中要导出的对象 ...

  7. 2017-2018 ACM-ICPC, Asia Tsukuba Regional Contest E:Black or White

    这道题可以比较容易看出是线性DP.设dp[i]代表把前i个格子刷成目标状态的最小步数. 写出状态转移方程 dp[i]=min( dp[j]+calc(j+1,i) ) (i-j<=k) calc ...

  8. day05 python字典

    day05 python   一.字典     1.dict 用{}表示, 存放的是: key:value    (开发的都知道的是键值对数据,这样说)         key: 关键字不能重复, 不 ...

  9. Restrictions----用法

    ----------------------------------------方法说明 --------------------------QBC常用限定方法-------------------- ...

  10. 密码学之RSA基础

    预备数论知识 互质关系 如果两个正整数,除了1以外,没有其他公因子,那么就称这两个数是互质关系 比如:4和7,13和61 欧拉函数 思考:任意给定整数n,在小于等于n的正整数中,有多少个数与n构成互质 ...