码迷,mamicode.com
首页 > Web开发 > 详细

Velocity.js应用基础(一)

时间:2015-06-15 10:49:09      阅读:149      评论:0      收藏:0      [点我收藏+]

标签:

Velocity.js是一款优秀的js动画插件,内部模拟jquery的queue队列来实现animate效果。可以实现css3中的变形缩放等功能特效,速度和性能优于jquery和css3自定义动画。兼容流行js框架,体积小,压缩后仅有7K大小。
内部实现可参考官方API文档,或者阅读程序源码。文末将会给出官网地址。

Velocity.js提供基本的动画功能,如果有需要,可以引入扩展插件——Velocity.ui.js。

如果html文档有引入jquery的话,js文件的引入顺序应该为:

1 <script src="jquery.js"></script>
2 <script src="Velocity.js"></script>
3 <script src="Velocity.ui.js"></script>

 

下面介绍方法的基本参数和用法(Basics: Arguments):
一,基本方法调用形式:

 1 $element.velocity({
 2 width: "500px",
 3 property2: value2
 4 }, {
 5 /* Velocity‘s default options */
 6 duration: 400, //持续时间(可用slow,fast,normal)
 7 easing: "swing", //过渡方式
 8 queue: "", //队列
 9 begin: undefined, //动画开始前执行函数
10 progress: undefined, //动画进行时执行函数
11 complete: undefined, //动画完成执行函数
12 display: undefined, //显示隐藏
13 visibility: undefined, //显示隐藏
14 loop: false, //回到上一步动画初始位置
15 delay: false, //延迟
16 mobileHA: true //是否开启硬件加速
17 });

 

注:接收两个参数
第一个参数为css属性和值,可以为json形式的名值对。
第二个参数为其他备选参数。
名值对之间用逗号隔开。

单个object也可以用以下方式。

$element.velocity({
properties: { opacity: 1 },
options: { duration: 500 }
});

 

Or:

$element.velocity({
properties: { opacity: 1 },
options: { duration: 500 }
});

 

Velocity也可以接收像jquery一样的逗号方法接收参数。但是仅限于: duration, easing, complete 三个属性。
例如:

$element.velocity({ top: 50 }, 1000);
$element.velocity({ top: 50 }, 1000, "swing");
$element.velocity({ top: 50 }, "swing");
$element.velocity({ top: 50 }, 1000, function() { alert("Hi"); });

 

二,参数形式:
Properties Map(就是第一个参数)。
css属性和值的名值对。
不要使用padding:1 1 1 1这样的形式,因为你传入了多个值(多值情况下,只取第一个值)。
改为padding:1,或者paddingLeft:1的形式。

以下css属性可采用Feature: Hook(后面详细介绍)
textShadow, boxShadow,clip,backgroundPosition, transformOrigin.
或者分开来写的形式,例如:$element.velocity({ textShadowBlur: “10px” });

以下为英文原文:
However, Velocity includes hooks to break down the following properties that require multiple values: textShadow, boxShadow, clip,backgroundPosition, and transformOrigin. Refer to the CSS Support dropdown for a full listing of hooks.

传入属性值单位可支持 px, em, rem, %, deg, vw/vh 。不写单位默认为px。
传入值可使用符号+, -, *, /。
例如:

1 $element.velocity({
2 top: 50, // Defaults to the px unit type
3 left: "50%",
4 width: "+=5rem", // Add 5rem to the current rem value
5 height: "*=2" // Double the current height
6 });

 

注:
浏览器支持:REM单位不低于IE 9支持。VH / VW单位不低于IE 9或以下的Android 4.4支持。
Velocity可支持经典jquery链式写法。

Velocity.js官方网站:http://www.julian.com/research/velocity/

本文来自前端365博客(http://qianduan365.com/),文章内容均为毛桃原创,转载请在博客下留言,并保留出处,谢谢合作。

 

Velocity.js应用基础(一)

标签:

原文地址:http://www.cnblogs.com/qianduan365/p/4576377.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!