javascript中全屏滑动效果实现
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
<style>
* {
margin: 0;
padding: 0;
} ul, ol {
list-style: none;
} html, body, ul, ul li {
width: 100%;
height: 100%;
} ol {
position: fixed;
top: 50px;
left: 50px;
} ol li {
width: 50px;
height: 50px;
border: 1px solid #000;
text-align: center;
line-height: 50px;
cursor: pointer;
}
</style>
</head>
<body>
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ul>
<ol>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ol>
<!--ol>li{$}*5-->
<script>
var timer = null;
//var leader = 0;
//找人
var ol = document.getElementsByTagName("ol")[0];
var olLis = ol.children;
var ul = document.getElementsByTagName("ul")[0];
var ulLis = ul.children; var arr = ["red", "orange", "yellow", "green", "blue"];
for (var i = 0; i < arr.length; i++) {
olLis[i].style.backgroundColor = arr[i];
ulLis[i].style.backgroundColor = arr[i];
} /*window.onscroll = function () {
leader = window.pageYOffset;//当前页面被卷去的头部
};*/ //给所有的olLis注册点击事件
for (var j = 0; j < olLis.length; j++) {
olLis[j].index = j;
olLis[j].onclick = function () {
//让窗体滚动到指定位置
//就是要滚动到 要去的ul 的 offsetTop的值
//当前点击的是ol中的哪个li 就去到ul中的那个li
var target = ulLis[this.index].offsetTop;
//window.scrollTo(0, target);
//之前封装的缓动框架只能设置属性 而我们这里要的是一个渐渐变化的值
clearInterval(timer);
timer = setInterval(function () {
//step = (target - leader) / 10
//leader = leader + step
var leader = window.pageYOffset;//当前页面被卷去的头部
var step = (target - leader) / 10;
step = step > 0 ? Math.ceil(step) : Math.floor(step);
leader = leader + step;
//console.log(leader);
window.scrollTo(0, leader);
if (leader === target) {
clearInterval(timer);
}
}, 20);
};
}
</script>
</body>
</html>
javascript中全屏滑动效果实现的更多相关文章
- iOS开发——实用技术OC篇&8行代码教你搞定导航控制器全屏滑动返回效果
8行代码教你搞定导航控制器全屏滑动返回效果 前言 如果自定了导航控制器的自控制器的leftBarButtonItem,可能会引发边缘滑动pop效果的失灵,是由于 self.interactivePop ...
- 手机端实现fullPage——全屏滚动效果
封装了一个小插件模拟fullPage的全屏滚动效果,比较简单. 特点: 1. 纯js实现,小巧轻便. 2. 兼容性好.苹果.安卓都没问题,暂时没遇到问题机型. 缺点: 1. 仅封装了基础功能,H ...
- 全屏滚动效果H5FullscreenPage.js
前提: 介于现在很多活动都使用了 类似全屏滚动效果 尤其在微信里面 我自己开发了一个快速构建 此类项目的控件 与市面上大部分控件不同的是此控件还支持元素的动画效果 并提供多种元素效果 基于zepto. ...
- pagePiling.js - 创建漂亮的全屏滚动效果
全屏滚动效果是最近非常流行的网页设计形式,带给用户良好的视觉和交互体验.pagePiling.js 这款 jQuery 插件可以帮助前端开发人员轻松实现这种效果.支持所有的主流浏览器,包括IE8+,支 ...
- UINavigationController实现全屏滑动返回功能
说明: UINavigationController默认在push出的控制器中都有边沿滑动返回功能,但是只能从屏幕左边滑才能返回,若从屏幕中间画并没有效果.下面实现全屏滑动功能. 探究: 系统默认能够 ...
- Android 高大上的侧滑菜单DrawerLayout,解决了不能全屏滑动的问题
DrawerLayout预览 DrawerLayout主要功能就是 实现侧滑菜单效果的功能,并且可以通过增加一些设置来实现高大上的效果,那么就请看动态图: 注意左上角那个图标,有木有很好玩,哈哈. ...
- 六一广告页H5全屏滚动效果实现
明天就六一儿童了(放假了),在这里提前祝大家周末快乐,每逢节假日公司必然会推出h5活动页的需求,这次六一儿童节也不例外,产品这次倒是没提什么互动效果需求,只不过根据UI妹子给的设计图,图片与图片中颜色 ...
- iOS - 全屏滑动
取经地址 1.使用关联 关联是指把两个对象相互关联起来,使得其中的一个对象作为另一个对象的一部分. 使用关联,是基于关键字的,因此,我们可以为任意对象增加任意多的关联,但是关键字是唯一的.关联可以保证 ...
- 移动端全屏滑动的小插件,简单,轻便,好用,只有3k swiper,myswiper,page,stage
https://github.com/donglegend/mySwiper mySwiper 移动端全屏滑动的小插件,简单,轻便,好用,只有3k 下载 直接下载 bower install mySw ...
随机推荐
- spring中quatz的多定时任务配置图文详解
近来公司让用quatz框架做定时功能,而且还是执行多定时任务,真是苦恼. 虽然从网上搜了很多资料,但是写法上不太尽如人意,最后还是请教了螃蟹大神,给的配置建议就是简单啊,现在拿来分享下: 这里我们需要 ...
- 05《UML大战需求分析》之五
调研需求的时候,用户会说这个软件要具备怎样的功能,能做什么事情等,这些是功能性的需求.部署图和构件图是用来描述软件架构的,但是我又怀疑软件需求调研也需要确定软件架构吗? 我阅读了一个例子,一个软件公司 ...
- python tips: for循环的小问题
在python中,用for对列表进行遍历的时候,迭代器中维护的是列表的索引而不是列表的元素.也就是说,for循环是对索引进行迭代,如果在for循环过程中修改了列表,迭代出来的值是新列表的索引位置,如果 ...
- JS 封装一个判断闰年平年的方法 aa(nian)
nn(2017) function nn (nian){ if(nian%4 == 0 && nian%100 !== 0 || nian%400 ==0 ) { alert(&quo ...
- 什么是JSON ?
JSON 实例 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <t ...
- 路飞学城Python-Day140
Django思维导图
- 地图API示例
http://developer.baidu.com/map/jsdemo.htm#i6_2
- python中的各个包的安装,用pip安装whl文件
在安装之前,一直比较迷惑究竟如何用,安装完后,发现竟然如此简单 首先我一般用的是python27,官网下载python27msi安装window7 64位后,已经自带了Pip 和 easy_insta ...
- 加速 MySQL 导入导出的方法
http://www.21andy.com/new/20100917/1952.html MySQL导出的SQL语句在导入时有可能会非常非常慢,在处理百万级数据的时候,可能导入要花几小时.在导出时合理 ...
- nyoj 120 建边构强连通
#include<stdio.h> #include<string.h> #include<queue> using namespace std; #define ...