scrollReveal.js – 页面滚动显示动画JS
来源:互联网 发布:淘宝上如何做推广 编辑:程序博客网 时间:2024/05/29 17:04
先来个案例
<script src="js/scrollReveal.js"></script> <script type="text/javascript">$(document).ready(function(){ (function($) { 'use strict'; window.scrollReveal = new scrollReveal({ reset: true, move: '50px' }); })();});</script>
css
/* banner */.bannerbg{height:604px;}.banner{background:url(../images/app/banner.jpg) no-repeat center top;height:604px;}.er-wei-ma{padding:90px 0px 0px 418px; font-size:32px; font-weight:normal; color:#fff;}.er-wei-ma img{margin:20px 30px 0 0;}.er-wei-ma .r{ width:360px; padding-top:25px;}.er-wei-ma p{ padding:10px 0;}.pbtn{background:url(../images/app/btn.png) no-repeat;cursor:pointer;width:238px;height:61px;display:inline-block;margin-right:74px;}.pbtn1{background-position:-238px 0; cursor:pointer;}.btn1:hover{background-position:-238px -61px;}.er-wei-ma h1 img{margin:0;}.t2{padding:16px 0 0px;}/* main */.mainwarp{background:#fff;}.box-mod{background:#f3f3f3;height:480px;}.pbox{width:1200px;margin:0 auto;}.pbox{position:relative;height:480px;}#mod3{ height:718px;}.text1{position:absolute;top:120px; left:100px;}.text2{position:absolute;top:120px;right:0;}.text3{position:absolute;left:150px;top:320px;}.phone1{position:absolute;top:40px;right:30px;z-index:3;}.phone2{position:absolute;top:50px;right:34px;z-index:2;}.phone3{position: absolute;top:40px;right:0px;z-index:1;}.phone4{position:absolute;top:76px;left:70px;z-index:1;} .phone6{position: absolute;top:148px;right:0;z-index:1;} /* common */.wrap{ width:1000px; margin:0 auto;}.none{ display:none;}.l{ float:left;}.r{ float:right;}
HTML 部分
<div class="banner"><div class="wrap"><div class="er-wei-ma"><div class="t2" data-scroll-reveal="enter right over 1s and move 100px"><img src="__ROOT__/Style/H/images/app/h2.png"></div><div class="clearfix"><div class="l" data-scroll-reveal="enter left over 1s and move 100px"><img src="__ROOT__/Style/H/images/app/phone.jpg"></div><div class="r"><p data-scroll-reveal="enter right over 1s and move 100px"><a class="pbtn" href="https://itunes.apple.com/cn/app/cai-lai-wang-li-cai/id1002974034?l=en&mt=8" target="_blank"></a></p><p data-scroll-reveal="enter right over 1s and move 100px"><a class="pbtn pbtn1" href="/Style/cailai.apk" target="_blank"></a></p></div></div></div></div></div> <div class="mainwarp"><div class="pbox" id="mod1"><div class="text1" data-scroll-reveal="enter left over 1s and move 100px"><img src="__ROOT__/Style/H/images/app/h1.jpg"></div><div class="phone1" data-scroll-reveal="enter top over 1s and move 100px"><img src="__ROOT__/Style/H/images/app/img1.png"></div><div class="phone2" data-scroll-reveal="enter right over 1s and move 100px"><img src="__ROOT__/Style/H/images/app/img2.png"></div><div class="phone3" data-scroll-reveal="enter bottom over 1s and move 100px"><img src="__ROOT__/Style/H/images/app/img3.png"></div></div><div class="box-mod"><div class="pbox" id="mod2"><div class="phone4" data-scroll-reveal="enter left over 1s and move 200px"><img src="__ROOT__/Style/H/images/app/img4.png"></div> <div class="text2" data-scroll-reveal="enter right over 1s and move 200px"><img src="__ROOT__/Style/H/images/app/img5.jpg"></div></div></div><div class="pbox" id="mod3"><div class="text3" data-scroll-reveal="enter bottom over 1s and move 200px"><img src="__ROOT__/Style/H/images/app/img6.jpg"></div><div class="phone6" data-scroll-reveal="enter top over 1s and move 200px"><img src="__ROOT__/Style/H/images/app/img7.jpg"></div> </div></div>
和 WOW.js 一样,scrollReveal.js 也是一款页面滚动显示动画的 JavaScript,能让页面更加有趣,更吸引用户眼球。不同的是 WOW.js 的动画只播放一次,而 scrollReveal.js 的动画可以播放一次或无限次;WOW.js 依赖 animate.css,而 scrollReveal.js 不依赖其他任何文件。
虽然 scrollReveal.js 不依赖 animate.css,但它的动画也是用 CSS3 创建的,所以它不支持 IE10 以下的浏览器。
浏览器兼容
IE6、IE7 等老旧浏览器不支持 CSS3 动画,所以没有效果,并且因为不支持一些属性或方法会报错。为了达到更好的兼容,最好加一个浏览器及版本判断。
基本方法
1、引入文件
<script src="js/scrollReveal.js"></script>
2、HTML
<div data-scroll-reveal>dowebok.com</div>
必须给元素加上 data-scroll-reveal 属性,加上之后会执行默认的动画效果,你也可以自定义改属性以显示不同的动画效果,如:
<div data-scroll-reveal="enter left and move 50px over 1.33s">dowebok.com</div><div data-scroll-reveal="enter from the bottom after 1s">Hello world!</div><div data-scroll-reveal="wait 2.5s and then ease-in-out 100px">iPhone 6</div>
3、JavaScript
window.scrollReveal = new scrollReveal();//或者,elem 为动画元素的任何级别的父元素window.scrollReveal2 = new scrollReveal({elem: document.getElementById('srcontainer')});
data-scroll-reveal属性
上面说了可以自定义 data-scroll-reveal 属性,下面来看看该属性的关键词和值(可选)。
enter
说明: 动画起始方向
值: top | right | bottom | left
move
说明: 动画执行距离
值: 数字,以 px 为单位
over
说明: 动画持续时间
值: 数字,以秒为单位
after/wait
说明: 动画延迟时间
值: 数字,以秒为单位
填充(可选)
可以在 data-scroll-reveal 属性里填充(添加)一些类似编程的“语句”,使其更有可读性,scrollReveal.js 支持以下“语句”:
from
the
and
then
but
with
,
也就是可以像这样写 HTML:
<div data-scroll-reveal="wait 0.3s, then enter left and move 40px over 2s">dowebok.com</div><div data-scroll-reveal="enter from the left after 0.3s, move 40px, over 2s">Hello world!</div><div data-scroll-reveal="enter left move 40px over 2s after 0.3s">iPhone 6</div><div data-scroll-reveal="enter left, move 40px, over 2s, wait 0.3s">I love you</div>
高级用法
自定义默认值
可以更改 scrollReveal.js 的默认配置,如:
var config = { after: '0s', enter: 'bottom', move: '24px', over: '0.66s', easing: 'ease-in-out', viewportFactor: 0.33, reset: false, init: true};window.scrollReveal = new scrollReveal(config);
动态HTML
scrollReveal.init() 方法可以检测所有含有 data-scroll-reveal 属性的元素,并进行初始化,所以对于动态加载的元素,可以这样操作:
var config = { enter: 'bottom', move: '40px', over: '0.16s', reset: true, init: false};window.scrollReveal = new scrollReveal(config);var data = {newElementHtml: '<div data-scroll-reveal>dowebok.com</div>'};var container = document.getElementById('#container');container.innerHTML(data.newElementHTML);scrollReveal.init();
参考地址:http://www.dowebok.com/134.html
- scrollReveal.js – 页面滚动显示动画JS
- scrollReveal.js – 页面滚动显示动画JS
- scrollReveal.js – 页面上下滚动时动画多次播放
- 触发动画插件scrollreveal.js
- wow.js和scrollReveal.js
- WOW.js+animate.css让页面滚动时显示动画,使页面更有趣
- JS实现页面数值滚动显示
- js 数字滚动 动画
- 【jQuery插件】-----页面滚动时动画wow.js
- WOW.js+animate 帮助你实现滚动页面动画效果
- js 双击滚动页面
- WOW.js – 在页面滚动时展现动感的元素动画效果(精)
- js 实现滚动显示
- js 滚动显示文本
- js显示滚动标题
- JS滚动显示
- 网页中adobe PDF显示,js控制pdf页面滚动
- js原生滚动条动画
- 将秒数转化为时分秒
- 输入法不见了
- jQuery插件简单示例
- 借助JRebel使Tomcat支持热部署
- 个人创业楷模:一个人,一个网站,5.75亿美元卖掉
- scrollReveal.js – 页面滚动显示动画JS
- Java7 新特性:try() 语句 即 try-with-resources
- 在TextView里面显示log
- 通过 ffmpeg 无损剪切/拼接视频
- VoLTE到底是啥?4G网络常见名词解释
- Fragment中 onActivityResult不响应
- 二叉查找树、平衡二叉树、红黑树
- 常用命令
- Markdown编辑器语法——字体、字号与颜色(字体颜色+背景色)