继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

jQuery旋转插件—rotate

萌萌小温柔
关注TA
已关注
手记 306
粉丝 56
获赞 401

网上发现一个很有意思的jQuery旋转插件,支持Internet Explorer 6.0+ 、Firefox 2.0 、Safari 3 、Opera 9 、Google Chrome,高级浏览器下使用Transform,低版本ie使用VML实现。

调用和方法:
 rotate(angle)

angle参数:[Number] – 默认为 0 – 根据给定的角度旋转图片

例如:

1$("#img").rotate(45);

rotate(parameters)

parameters参数:[Object] 包含旋转参数的对象。支持的属性:

  1. angle属性:[Number] – default 0 – 旋转的角度数,并且立即执行
     例如:

     

    1$("#img").rotate({angle:45});
  2. bind属性:[Object] 对象,包含绑定到一个旋转对象的事件。事件内部的$(this)指向旋转对象-这样你可以在内部链式调用- $(this).rotate(…)。例如 (click on arrow):              

    $("#img").rotate({bind:{  click: function(){  $(this).rotate({  angle: 0,  animateTo:180 }) } } });

             

  3. animateTo属性:[Number] – default 0 – 从当前角度值动画旋转到给定的角度值 (或给定的角度参数)例如: 结合上面的例子,请参阅使用。

  4. duration属性:[Number] – 指定使用animateTo的动画执行持续时间例如 (click on arrow):              

      

       


    $("#img").rotate({bind:{ click: function(){ $(this).rotate({ duration:6000, angle: 0, animateTo:100 }) } } });


     


  5. step属性:[Function] – 每个动画步骤中执行的回调函数,当前角度值作为该函数的第一个参数

  6. easing属性:[Function] – 默认 (see below) – Easing function used to make animation look more natural. It takes five parameters (x,t,b,c,d) to support easing from http://gsgd.co.uk/sandbox/jquery/easing/   (for more details please see documentation at their website). Remember to include easing plugin before using it in jQueryRotate!Default function:

     function (x,   t, b, c, d) { return -c   * ((t=t/d-1)*t*t*t - 1) + b; }

    Where:t: current time,
     b: begInnIng value,
     c: change In value,
     d: duration,
     x: unused
     No easing (linear easing):

     function(x,   t, b, c, d) { return (t/d)*c   ; }

    Example (click on arrow):

    $("#img").rotate({bind:{ click: function(){ $(this).rotate({ angle: 0, animateTo:180, easing: $.easing.easeInOutElastic }) } } });

             

  7. callback属性:[Function] 动画完成时执行的回调函数例如 (click on arrow):              

    $("#img").rotate({bind:{  click: function(){ $(this).rotate({ angle: 0, animateTo:180, callback: function(){ alert(1) } }) } } });

             

getRotateAngle

这个函数只是简单地返回旋转对象当前的角度。

例如:

1 $("#img").rotate({ 2 angle: 45, 3 bind: { 4 click : function(){ 5 alert($(this).getRotateAngle()); 6 } 7 } 8 });

         

stopRotate

这个函数只是简单地停止正在进行的旋转动画。

例如:

 
1 $("#img").rotate({  2 bind: {  3 click: function(){  4 $("#img").rotate({  5 angle: 0,  6 animateTo: 180,  7 duration: 6000  8 });  9 setTimeout(function(){ 10 $("#img").stopRotate(); 11 }, 1000); 12 } 13 } 14 });

       

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP