核心提示:jq实现的楼层效果htmlhtmlhead lang=enmeta charset=UTF-8titletitlestyleul{position: fixed;left: 0;top: 30%;}l...
jq实现的楼层效果
html> <html> <head lang="en"> <meta charset="UTF-8"> <title>title> <style> ul{ position: fixed; left: 0; top: 30%; } li{ height: 40px; line-height: 40px; list-style: none; width: 100px; text-align: center; background: #f01; color: #ffffff; cursor:pointer; } a{ color: #ffffff; text-decoration: none; } #a1{background: #dddddd; height: 900px; width: 90%; margin-left: 10%; } #a2{background: #dddddd; height: 900px; width: 90%; margin-left: 10%; } #a3{background: #dddddd; height: 900px; width: 90%; margin-left: 10%; } #a4{background: #dddddd; height: 900px; width: 90%; margin-left: 10%; } #a5{background: #dddddd; height: 900px; width: 90%; margin-left: 10%; } .active{ background: #ddd; } .active>a{ color: #000; } #LouDao{ display: none; } #main{ overflow: hidden; } style> head> <body> <ul id="LouDao"> <li><a>第一章a>li> <li><a>第二章a>li> <li><a>第三章a>li> <li><a>第四章a>li> <li><a>第五章a>li> ul> <p id="main"> <p id="a1"> 这是一个悲惨的故事 p> <p id="a2">这是一个欢快的故事p> <p id="a3">这是一个伤心的故事p> <p id="a4">这是一个幸福的故事p> <p id="a5">这是一个狗血的故事p> p> <footer> <p style="height: 900px;width: 100%">底部p> footer> body> <script src="jquery-1.11.3.js">script> <script> var daohang=$("#LouDao");//楼层标签 var li=$("#LouDao>li");//获取目录li var main=$("#main>p");//文章主要内容 $(window).scroll(function() { //获取到页面总高度 var HeightAll = $("html,body").height(); //获取滚动条位置 var iTop = $(window).scrollTop(); for(var i=0;i<main.length;i++){ //楼层的显示和隐藏 if(iTop>=main[0].offsetTop){ daohang.show(); }else{ daohang.hide(); }; //楼层的联动 var num=0 for(var i=0;i<main.length;i++){ if(iTop>=main[i].offsetTop){ num=i; } li[i].className='';//设置li中的class为空 }; li[num].className='active'; for(var i=0;i<li.length;i++){ li[i].onclick=function(){ for(var j=0;j<li.length;j++){ if(this==li[j]){ $("html,body").animate({scrollTop:main[j].offsetTop},500); } } } } } }) function delay(obj){ var l=0; var t=0; while(obj){ l=l+obj.offsetLeft; t=t+obj.offsetTop; obj=obj.offsetParent; } return{left:l,top:t}; } // new delay(); // console.log(delay(daohang).top); script> html>