前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >html5 jqueryrotate插件实现旋转动画

html5 jqueryrotate插件实现旋转动画

作者头像
xiangzhihong
发布2018-02-01 14:16:19
4.5K0
发布2018-02-01 14:16:19
举报
文章被收录于专栏:向治洪向治洪

CSS3 提供了多种变形效果,比如矩阵变形、位移、缩放、旋转和倾斜等等,让页面更加生动活泼有趣,不再一动不动。然后 IE10 以下版本的浏览器不支持 CSS3 变形,虽然 IE 有私有属性滤镜(filter),但不全面,而且效果和性能都不好。

今天介绍一款 jQuery 插件——jqueryrotate,它可以实现旋转效果。jqueryrotate 支持所有主流浏览器,包括 IE6。如果你想在低版本的 IE 中实现旋转效果,那么 jqueryrotate 是一个很好的选择。

兼容性

jqueryrotate 支持所有主流浏览器,包括 IE6。jqueryrotate 在高级浏览器中使用 CSS3 transform 属性实现,在低版本 IE 中使用 VML 实现。当然,你可以使用 IE 条件注释,低版本 IE 使用 jqueryrotate,高级浏览器则直接使用 CSS3。

使用方法

我们使用 Google Chrome 的 Logo 做演示,图片如下,请注意对比,不要看花眼了。

Google Chrome
Google Chrome

演示1 直接旋转一个角度

Google Chrome
Google Chrome
代码语言:java
复制
 $('#img1').rotate(45);  

代码语言:java
复制
 $('#img1').rotate({angle:45});  

演示2 鼠标移动效果

Google Chrome
Google Chrome
代码语言:java
复制
 $('#img2').rotate({   
     bind : {  
         mouseover : function(){  
             $(this).rotate({animateTo: 180});  
         }, mouseout : function(){  
             $(this).rotate({animateTo: 0});  
         }  
     }  
 });  

演示3 不停旋转

Google Chrome
Google Chrome
代码语言:java
复制
 var angle = 0;  
 setInterval(function(){  
     angle +=3;  
     $('#img3').rotate(angle);  
 }, 50);  
Google Chrome
Google Chrome
代码语言:java
复制
 var rotation = function (){  
     $('#img4').rotate({  
         angle: 0,   
         animateTo: 360,   
         callback: rotation  
     });  
 }  
 rotation();  
Google Chrome
Google Chrome
代码语言:java
复制
 var rotation2 = function(){  
     $('#img5').rotate({  
         angle: 0,   
         animateTo: 360,   
         callback: rotation2,  
         easing: function(x,t,b,c,d){  
  return c*(t/d)+b;  
         }  
     });  
 }  
 rotation2();  

演示4 点击旋转

Google Chrome
Google Chrome
代码语言:java
复制
 $('#img6').rotate({   
     bind: {  
         click: function(){  
             $(this).rotate({  
                 angle: 0,  
                 animateTo: 180,  
                 easing: $.easing.easeInOutExpo  
             });  
         }  
     }  
 });  
Google Chrome
Google Chrome
代码语言:java
复制
 var value2 = 0;  
 $('#img7').rotate({   
     bind: {  
         click: function(){  
             value2 +=90;  
             $(this).rotate({  
                 animateTo: value2  
             });  
         }  
     }  
 });  

参数

参数

类型

说明

默认值

angle

数字

旋转一个角度

0

animateTo

数字

从当前的角度旋转到多少度

0

step

函数

每个动画步骤中执行的回调函数,当前角度值作为该函数的第一个参数

easing

函数

自定义旋转速度、旋转效果,需要使用 jQuery.easing.js

callback

函数

旋转完成后的回调函数

getRotateAngle

函数

返回旋转对象当前的角度

stopRotate

函数

停止旋转

演示虽然使用的是图片,但 jqueryrotate 并不只是能运用在图片上,其他元素如 div 等也可以使用。同时,你可以发挥想象,制作出更多关于旋转的特效。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2015-12-08 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 兼容性
  • 使用方法
    • 演示1 直接旋转一个角度
      • 演示2 鼠标移动效果
        • 演示3 不停旋转
          • 演示4 点击旋转
          • 参数
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档