最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
当前位置: 首页 - 科技 - 知识百科 - 正文

H5+C3+JS实现楼层跳跃特效

来源:懂视网 责编:小采 时间:2020-11-27 15:25:46
文档

H5+C3+JS实现楼层跳跃特效

H5+C3+JS实现楼层跳跃特效:这次给大家带来H5+C3+JS实现楼层跳跃特效,H5+C3+JS实现楼层跳跃特效的注意事项有哪些,下面就是实战案例,一起来看一下。<!DOCTYPE html> <html> <head> <title>楼层跳跃式的页面布局</title> <
推荐度:
导读H5+C3+JS实现楼层跳跃特效:这次给大家带来H5+C3+JS实现楼层跳跃特效,H5+C3+JS实现楼层跳跃特效的注意事项有哪些,下面就是实战案例,一起来看一下。<!DOCTYPE html> <html> <head> <title>楼层跳跃式的页面布局</title> <

这次给大家带来H5+C3+JS实现楼层跳跃特效,H5+C3+JS实现楼层跳跃特效的注意事项有哪些,下面就是实战案例,一起来看一下。

<!DOCTYPE html>
<html>
<head>
 <title>楼层跳跃式的页面布局</title>
 <meta charset="utf-8">
 <style type="text/css">
 *{
 margin: 0;
 padding: 0;
 }
 body, html{
 height: 100%;
 }
 ul{
 list-style: none;
 height: 100%;
 }
 ul li{
 height: 100%;
 }
 ol{
 list-style: none;
 position: fixed;
 top:200px;
 left: 50px;
 }
 ol li{
 width: 50px;
 height: 50px;
 border: 1px solid #000;
 text-align: center;
 line-height: 50px;
 margin-top: -1px;
 cursor: pointer;
 }
 </style>
</head>
<body>
<ul>
 <li>第一区域</li>
 <li>第二区域</li>
 <li>第三区域</li>
 <li>第四区域</li>
</ul>
<ol>
 <li>1</li>
 <li>2</li>
 <li>3</li>
 <li>4</li>
</ol>
<script type="text/javascript" src="myScroll.js"></script>
<script type="text/javascript">
 // 点击ol的li,屏幕滑动到对应的ul的li
 // 利用window.scrollTo();缓动动画实现
 var ul = document.getElementsByTagName("ul")[0];
 var ol = document.getElementsByTagName("ol")[0];
 var ulLiArr = ul.children;
 var olLiArr = ol.children;
 var target = 0;
 var leader = 0;
 var timer = null;
 // 1. 指定ul和ol中li的背景色,对应li的背景色相同
 var arrColor = ["green","orange","yellow","red","gold"];
 // 利用for循环给两个数组中的元素上色
 for(var i=0; i<arrColor.length; i++){
 ulLiArr[i].style.backgroundColor = arrColor[i];
 olLiArr[i].style.backgroundColor = arrColor[i];
 // 属性绑定索引值
 olLiArr[i].index = i;
 // 循环绑定,为每一个li绑定点击事件
 olLiArr[i].onclick =function(){
 // 获取目标位置
 target = ulLiArr[this.index].offsetTop;
 clearInterval(timer);
 // 利用缓动动画原理实现屏幕滑动
 timer = setInterval(function(){
 // (1).获取步长
 var step = (target-leader)/10;
 // (2).二次处理步长
 step = step > 0 ? Math.ceil(step) : Math.floor(step);
 // (3).屏幕滑动
 leader = leader + step;
 window.scrollTo(0, leader);
 // (4).清除定时器
 if(Math.abs(target-leader) <= Math.abs(step)){
 window.scrollTo(0, target);
 clearInterval(timer);
 }
 }, 25);
 }
 // 用scroll事件模拟盒子距离最顶端的距离
 window.onscroll = function(){
 // 每次屏幕滑动,把屏幕卷去的值赋给leader,模拟获取显示区域距离顶部的距离
 leader = scroll().top;
 }
 }
</script>
</body>
</html>

??myScroll.js

function scroll() { 
 // 开始封装自己的scrollTop
 if(window.pageYOffset !== undefined) { 
 // ie9+ 高版本浏览器
 // 因为 window.pageYOffset 默认的是0,所以需要判断
 return {
 left: window.pageXOffset,
 top: window.pageYOffset
 }
 }
 else if(document.compatMode === "CSS1Compat") {
 // 标准浏览器,来判断有没有声明DTD
 return {
 left: document.documentElement.scrollLeft,
 top: document.documentElement.scrollTop
 }
 }
 return {
 // 未声明 DTD
 left: document.body.scrollLeft,
 top: document.body.scrollTop
 }
}

相信看了本文案例你已经掌握了方法,更多精彩请关注Gxl网其它相关文章!

推荐阅读:

Echarts实现动态变色柱状图

jquery实现全选反选单选

jQuery操作背景颜色渐变动画效果

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文档

H5+C3+JS实现楼层跳跃特效

H5+C3+JS实现楼层跳跃特效:这次给大家带来H5+C3+JS实现楼层跳跃特效,H5+C3+JS实现楼层跳跃特效的注意事项有哪些,下面就是实战案例,一起来看一下。<!DOCTYPE html> <html> <head> <title>楼层跳跃式的页面布局</title> <
推荐度:
标签: 特效 实现 js
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top