Velocity.js使用总结

Velocity.js(独立于jQuery的,但两者可以结合使用[利用jQuery的链式操作])
1.可以使用animate()的语法,使用velocity设置改元素的动画;

$div.velocity({opacity:0})
$element.velocity(properties,options)

注释:第一个参数【对象】用于将css属性映射到最终的期望值上(说明:如果提供的属性包含字母,那么要将它们用半角引号括起来)
2.还有一种参数简写语法,不将选项对象作为第二个参数传入,而是使用逗号分隔参数语法;需要列举动画duration, easing,function(){}

$div.velocity({opacity:0},1000,’ease-in’,function(){alert(123})

3.值;
支持px,em,rem,%,deg,vw【默认px】
4.链式操作
当一个元素链式调用多个velocity函数时,会自动形成队列(一个动画结束后一个动画接着执行)

$element
   .velocity({ width: "500px", height: "300px"})
   .velocity({ opacity: 0 });

5.options;
Duration(持续时间):以毫秒为单位指定duration值时,请提供一个不带单位的整数值。Slow【600ms】,normal【400ms】,fast【200ms】
Easing:ease-in-out,ease-in,ease-out
【贝塞尔曲线:参数格式是一个含有4个小数的数组】

$div.velocity({width:”300px”},[0.17, 0.67, 0.83, 0.67])

【弹簧物理:两个值的数组【张力,摩擦力】:张力越大(默认:500),整体速度和弹动幅度就越大;摩擦力越小(默认:20),弹簧结尾处的震动速度就越快】

$div.velocity({width:”500px”},[250,15])

【spring:随手可用的弹簧物理缓动预设】

$div.velocity({width:”500px”},”spring”)

【begin(开始)和complete(完成)】

$div.velocity(
  {opacity:0,width:”500px”},
  {
      begin:function(){
        alert(“begin!”)
      },
    complete:function(){
      alert(“complete!”)
    }
 }
)

【loop:动画就在调用的属性映射汇总的值与调用之前元素的值之间交替几次】

$div.velocity({height:"10em"},{loop : 2});

除了可以传入整数以外,还可以将true传给loop,这样会无限触发循环。
无限循环对于加载指示器大有帮助。(警灯)

$div.velocity({ opacity:0},{loop:true});

【delay(延迟)】

$div.velocity({opacity:0},{delay:100});
$div.velocity({height:”+=100px”,width:”+=100px”},{loop:4,delay:1000})

【display,visibility】

$div.velocity({opacity:0},{display:”block”})

6.reverse(反转)

//  先将宽度变到100px
$element.velocity({ width: "100px" }, 400);

//在400ms内回到原来的状态
$element.velocity("reverse");

7.Scrolling(滚动)

// 滚动之后窗口上边缘将位于元素上边缘之上100px的地方
$element.velocity("scroll", { duration: 1000, offset: "-100px" });

//滚动之后窗口上边缘将位于元素上边缘之下100px的地方
$element.velocity("scroll", { duration: 1000, offset: "100px" });

8.transform(变换)【translation,rotate,scale】

translateX: 从左向右沿x轴移动元素
translateY: 从上到下沿y轴移动元素
rotateZ: 关于z轴旋转元素
rotateX: 关于x轴旋转元素(看起来由里向外)
rotateY: 关于y轴旋转元素(由左到右)
scaleX: 成倍数改变元素宽度
scaleY: 成倍数改变元素高度
$element.velocity({
    rotateZ: "90deg", // rotate clockwise 90 degrees
    scaleX: 2.0 // double the width
    });

9.定义动画序列;

var seq=[
  {
  elements:$(‘#div1’),
  Properties:{width:’300px’},
  options:{duration:1000}
  },
  {
  elements:$(‘#div2’),
  Properties:{width:’300px’},
  options:{duration:1000}
  }
]
$.Velocity.RunSequence(seq);

10.预定义动画和自定义动画:
①.预定义动画

    $('#div1').on('mouseover',function(){
      $(this).velocity('callout.shake');
    });

还有很多预定义动画,这里我根据官网一一列举一下:
callout.bounce
callout.shake
callout.flash
callout.pulse
callout.swing
Callout.tada
transition.fadeIn
transition.fadeOut
transition.flipXIn
transition.flipXOut
transition.flipYIn
transition.flipYOut
transition.flipBounceXIn
transition.flipBounceXOut
transition.flipBounceYIn
transition.flipBounceYOut
transition.swoopIn
transition.swoopOut
transition.whirlIn
transition.whirlOut
transition.shrinkIn
transition.shrinkOut
transition.expandIn
transition.expandOut
transition.bounceIn
transition.bounceOut
transition.bounceUpIn
transition.bounceUpOut
transition.bounceDownIn
transition.bounceDownOut
transition.bounceLeftIn
transition.bounceLeftOut
transition.bounceRightIn
transition.bounceRightOut
transition.slideUpIn
transition.slideUpOut
transition.slideDownIn
transition.slideDownOut
transition.slideLeftIn
transition.slideLeftOut
transition.slideRightIn
transition.slideRightOut
transition.slideUpBigIn
transition.slideUpBigOut
transition.slideDownBigIn
transition.slideDownBigOut
transition.slideLeftBigIn
transition.slideLeftBigOut
transition.slideRightBigIn
transition.slideRightBigOut
transition.perspectiveUpIn
transition.perspectiveUpOut
transition.perspectiveDownIn
transition.perspectiveDownOut
transition.perspectiveLeftIn
transition.perspectiveLeftOut
transition.perspectiveRightIn
transition.perspectiveRightOut
②自定义动画:
    官网推荐代码:

    $.Velocity.RegisterEffect(name,{
      defaultDuration : duration ,
      calls : [
        [ { property : value }, durationPercentage, {options} ],
        [ { property : value }, durationPercentage, {options} ]
      ],
      reset : { property : value, property : value }
    });

下面是代码示例:

  $.Velocity.RegisterEffect ( 'jiangbo.pulse', { 
    defaultDuration : 300,
    calls : [
      [ { scaleX : 1.1 }, 0.5 ],
      [ { scaleX : 1.0 }, 0.5 ]
    ]
  } );
  $('#div1').on('mouseover',function(){
    $(this).velocity('jiangbo.pulse');
  });
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,175评论 5 466
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,674评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,151评论 0 328
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,597评论 1 269
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,505评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 47,969评论 1 275
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,455评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,118评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,227评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,213评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,214评论 1 328
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,928评论 3 316
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,512评论 3 302
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,616评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,848评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,228评论 2 344
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,772评论 2 339

推荐阅读更多精彩内容

  • React Native 进阶(二)--动画 动画 流畅、有意义的动画对于移动应用用户体验来说是非常必要的。我们可...
    呼呼哥阅读 2,730评论 2 5
  • 选择qi:是表达式 标签选择器 类选择器 属性选择器 继承属性: color,font,text-align,li...
    wzhiq896阅读 1,723评论 0 2
  • 选择qi:是表达式 标签选择器 类选择器 属性选择器 继承属性: color,font,text-align,li...
    love2013阅读 2,299评论 0 11
  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥ios动画全貌。在这里你可以看...
    每天刷两次牙阅读 8,432评论 6 30
  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥iOS动画全貌。在这里你可以看...
    F麦子阅读 5,082评论 5 13