jquery动画切换引擎插件 Velocity.js 学习01

一、Velocity.js介绍

  Velocity是一个jQuery插件,重新实现了$.animate() 来产生更高的性能(速度也比CSS动画库更快),而包括新的功能,以提高动画工作流程

  Velocity.js只有7k的大小,它不仅包含了$.animate()的所有功能,并且还包含了颜色切换、转换(transform)、循环、缓动、CSS切换、Scroll功能,它是jQuery、 jQuery UI、CSS变换在动画方面的最佳组合。

  Velocity.js支持IE8+、Chrome、Firefox等浏览器,并支持Andriod以及IOS。

  Velocity.js在内部实现中使用了jQuery的$.queue()方法,因此它比 jQuery的$.animate()$.fade()$.delay()方法更加流畅,其性能也高于CSS的animation属性。

 二、项目主页

  http://julian.com/research/velocity/

  下载:http://www.jqcool.net/localdown/201503/jqcool.net-velocity.zip

 三、使用

 3.1 Velocity.js包含两个输入参数,第一个参数 为 CSS属性,第二个参数为可选参数,为 velocity 配置选项。具体如下:  

$("div").velocity({
    property1: value1,
    property2: value2
}, {
    /* Default options */
    duration: 400,
    easing: "swing",
    queue: "",
    complete: null,
    loop: false,
    delay: false,
    display: false,
    mobileHA: true
});

Velocity.js同样支持jQuery的参数简写语法:$element.velocity(propertyMap [, duration] [, easing] [, complete]):,比如:

$("div").velocity({ left: 100 }, 1000);
$("div").velocity({ left: 100 }, 1000, "swing");
$("div").velocity({ left: 100 }, "swing");

3.2 制作动画序列的三种方式

  • 统一HTML代码:
<div class="div1"></div>
<div class="div2"></div>
  • 统一CSS样式:
.div1{ width: 120px; height: 120px; background-color: red;}
.div2{ width: 120px; height: 120px; background-color: blue; margin-top: 20px;}
  • 动画序列方式一:
(function($){
    // 方式一:
    $(‘.div1‘).velocity(   {
        width:‘400px‘
    },   {
        duration:600,
        complete:function(){  //队列
            $(‘.div2‘).velocity({
                width:‘400px‘
            },{
                duration:600
            })
        }
    })
})(jQuery)
  • 动画序列方式二:
(function($){   // 方式二:
    $(‘.div1‘).velocity(    {
      width:‘400px‘
    },{
      duration:600
    })
    $(‘.div2‘).velocity(    {
        width:‘400px‘
    },{
        duration:600,
        delay:600
    })
})(jQuery)
  • 动画序列方式三(推荐使用)
(function($){
    // 方式三:
    var seq = [
    {
        elements:$(‘.div1‘),
        properties:{ width:‘500px‘},
        options:{ duration:600}
    },
    {
        elements:$(‘.div2‘),
        properties:{ width:‘500px‘},
        options:{ duration:600}
    }
    ];
    $.Velocity.RunSequence(seq);

})(jQuery)

3.3 预定义动画

(function($){
    //预定义动画
    $(‘.div1‘).on(‘mouseover‘,function(){
        $(this).velocity(‘callout.shake‘)  //官网定义了很多预定义动画:callout.bounce、callout.pulse、callout.swing等
    });
    //定义自己的动画效果(RegisterEffect或者RegisterUI)
    $.Velocity.RegisterEffect(‘mycall.scalex‘,{
        defaultDuration:300,
        calls:[
            [{ scaleX : 1.2 },0.5],   //[ { property : value }, durationPercentage, {options} ]
            [{ scaleX : 1.0 },0.5]
        ]
    })  //调用自定义动画
    $(‘.div2‘).on(‘mouseover‘,function(){
        $(this).velocity(‘mycall.scalex‘)
    })
})(jQuery)

参考:http://www.infoq.com/cn/news/2014/05/jquery-velocity-js

慕课网:Velocity.js实现弹出式相框

时间: 2024-10-27 11:10:00

jquery动画切换引擎插件 Velocity.js 学习01的相关文章

jquery动画切换引擎插件 Velocity.js 学习02

案例实践: 第一页会以动画形式进入页面: 点击进入按钮时,第一页以动画消失,第二页以动画形式进入,同时四张图片也定义从小到大的动画形式: 第二页关闭按钮点击时,先是四张图片以缩小动画消失,然后第二页以动画形式消失,第一页以动画形式进入.   JS代码: (function(){ // 定义变量 var container = $('.container'); //主容器 var boxFront = $('.box-front'); //卡片正面 var mkLogo = $('.img-hea

分享JQuery动画插件Velocity.js的六种列表加载特效

分享JQuery动画插件Velocity.js的六种列表加载特效.在这款实例中给中六种不同的列表加载效果.分别为从上飞入.从右侧飞入.从左侧飞入.和渐显.一起看下效果图: 在线预览   源码下载 实现的代码. html代码: <h1> Velocity.js <i>slice + sequence</i></h1> <pre>Only anim X number with FX#1, animate Y number with FX#2 etc

实用带多种CSS动画特效的jQuery弹出层插件hDialog.js

<!doctype html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"> <link rel=&qu

Node.Js学习01: Module System 以及一些常用Node Module

Node.Js学习就按照这本书的流程来. 在第7章结束与第10章结束时分别自己出一个小项目练练手.Node.Js的入门学习计划是这样. 目录:, QQ:1045642972 欢迎来索书以及讨论Node.Js. Node.Js Demo Node.Js官网提供了一个最基本的Demo Code: var http = require('http'); http.createServer(function (req, res) { res.writeHead(200, {'Content-Type':

JQuery动画插件Velocity.js发布:更快的动画切换速度

5月3日,Julian在其GitHub上发布了Velocity.js.Velocity.js是一款动画切换的jQuery插件,它重新实现了jQuery的$.animate()方法从而加快动画切换的速度.Velocity.js只有7k的大小,它不仅包含了$.animate()的所有功能,并且还包含了颜色切换.转换(transform).循环.缓动.CSS切换.Scroll功能,它是jQuery. jQuery UI.CSS变换 在动画方面的最佳组合.Velocity.js支持IE8+.Chrome

javascript动画:velocity.js学习

第二章:基础知识 一.velocity和jQuery: Velocity函数是独立于jQuery的,但两者可以结合使用.通常这么做的好处是可以利用jQuery的链式操作:当你先用jQuery选择了一个元素后,就可以用这个元素去调用.velocity()为它添加动画效果.例如: //将一个变量分配给某个jQuery元素对象. var $div = $(“div”); //使用velocity设置该元素的动画 $div.velocity({ opacity : 0 }); //该句语法与jQuery

jQuery全屏滚动插件fullPage.js使用中遇到的问题

1.fullPage.js是什么? fullPage.js 是一个基于 jQuery ,用来制作全屏网站的插件. 2.兼容性: - jquery兼容:兼容 jQuery 1.7+ - 浏览器兼容: IE8+,Chrome,FireFox 3.问题: 根据使用文档,轻松实现了全屏,但是当在某一屏中,内部的子元素中需要实现滑动的轮播效果,一开始,我就直接在$(document).ready()里面写方法,但是网页上除了按钮可以变色外,没有任何滑动效果.经过调试,发现按钮点击事件是进去了的,但就是感觉

学习 | jQuery全屏滚动插件FullPage.js

简介 fullPage.js是一个基于jQuery的全屏滚动插件,它能够很方便.很轻松的制作出全屏网站. 主要功能 支持鼠标滚动 支持前进后退和键盘控制 多个回调函数 支持手机.平板触摸事件 支持 CSS3 动画 支持窗口缩放 窗口缩放时自动调整 可设置滚动宽度.背景颜色.滚动速度.循环选项.回调.文本对齐方式 兼容性 fullPage.js 支持 IE8+ 及其他现代浏览器.测试代码 测试代码 <!DOCTYPE html> <html lang="en">

jQuery全屏滚动插件fullPage.js API

1.引入js: <link rel="stylesheet" href="css/jquery.fullPage.css"> <script src="js/jquery.min.js"></script> <!-- jquery.easings.min.js 是必须的,用于 easing 参数,也可以使用完整的 jQuery UI 代替 --> <script src="js/jq