jQuery.rotate.js(控制图片转动)
jQuery.rotate.js笔记
1. jQuery.rotate.js是什么
一个开源的兼容多浏览器的jQuery插件用来对元素进行任意角度的旋转动画。

这个库开发的目的是为了旋转img的,在3.x之后的版本可能支持其它元素,但旋转其它元素在一些低版本浏览器可能出现兼容器问题。所以应该尽量只用在旋转img元素上。
2. jQuery.rotate.js怎么用
2.1 接口
总共提供了四个方法:
rorate(angle); rorate(parameters); getRorateAngle(); stopRotate();
2.1.1 rorate(angle);
传入一个角度,会直接将元素旋转到对应的角度,并不会有动画:
$("#foo").rotate(15);
效果:

2.1.2 rorate(parameters);
支持的参数:
| 参数名 | 类型 | 说明 |
| angle | Number | 旋转到指定的角度,不带动画,默认是0 |
| animateTo | Number | 旋转到指定的角度,使用动画 |
| bind | Object | 可以传入一个对象,作为事件绑定到元素上。 |
| center | Array | 用来设定旋转的中心,传入的数组是[X,Y]格式的,可以使用数值[100,100]或者百分比[“50%”,“50%”],默认是以元素的中心点旋转 |
| duration | Number | 指定动画的持续时间,默认是1000毫秒 |
| step | Function | 传入一个回调函数在动画的每一步都会调用一下 |
| easing | Function | 让动画看起来更自然,感觉用不到,而且本人对图形学没啥研究,感兴趣的官网有详细描述,就不再深究了…. |
| callback | Function | 当动画完成时的回调函数。 |
关于bind的想法:
jQuery已经为我们提供了很健全的事件绑定接口了,为啥这里还提供bind呢?
猜想可能是为了将同义操作统一化。
Demo : 一个简单的例子(倾斜的图画在鼠标移上去的时候摆正,离开的时候又恢复原样):
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
body{
text-align:center;
}
#foo{
width:300px;
height:200px;
margin-top:100px;
}
</style>
</head>
<body> <img id="foo" src="img/foo.jpg" alt="" /> <script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/jQueryRotate.js"></script>
<script type="text/javascript"> $(document).ready(function(){
$("#foo").rotate({
angle:15,
bind:{
mouseover:function(){
$(this).rotate({
animateTo:0
});
},
mouseout:function(){
$(this).rotate({
animateTo:15
});
}
}
});
}); </script>
</body>
</html>
效果:

Demo:center的使用
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
body{
text-align:center;
}
#foo{
width:200px;
height:130px;
margin-top:100px;
}
</style>
</head>
<body> <img id="foo" src="img/foo.jpg" alt="" /> <script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/jQueryRotate.js"></script>
<script type="text/javascript"> $(document).ready(function(){ $("#foo").rotate({
bind:{
click:function(){
$(this).rotate({
center:["0","100%"],
animateTo:90
});
}
}
}); }); </script>
</body>
</html>
效果:

2.1.3 getRorateAngle();
获取元素当前旋转的角度
$(document).ready(function(){
$("#foo").rotate({
angle:15,
bind:{
click:function(){
console.log($(this).getRotateAngle());
}
}
});
});
2.1.4 stopRotate();
停止元素的旋转。
一个小例子,元素不断的匀速旋转,单击时停止旋转:
$(document).ready(function(){
var rotate=function(){
$("#foo").rotate({
angle:0,
animateTo:360,
duration:5000,
callback:rotate,
easing: function (x,t,b,c,d){
return c*(t/d)+b;
},
bind:{
click:function(){
$(this).stopRotate();
}
}
});
}
rotate();
});
效果:

另一种实现元素不断旋转的方法:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
body{
text-align:center;
}
#foo{
width:300px;
height:200px;
margin-top:100px;
}
</style>
</head>
<body> <img id="foo" src="img/foo.jpg" alt="" /> <script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/jQueryRotate.js"></script>
<script type="text/javascript"> $(document).ready(function(){ var angle=0;
var rotate=function(){
angle=angle+10;
$("#foo").rotate({
animateTo:angle,
duration:100
})
}
setInterval(rotate,100); }); </script>
</body>
</html>
效果并不是特别理想,感觉有些卡顿。
3. 总结
1. jQuery.rotate适合对img元素进行旋转操作。
2. 可以设置动画过渡,可以设置过渡的时间。
3. 可以设置完成回调函数。
4. 可以自定义旋转中心。
5. 可以设置动画曲线。
6. 编不出了…
参考资料:
1. 官网 http://jqueryrotate.com/
jQuery.rotate.js(控制图片转动)的更多相关文章
- jQuery旋转插件jquery.rotate.js 让图片旋转
演示1 直接旋转一个角度 $('#img1').rotate(45); 演示2 鼠标移动效果 $('#img2').rotate({ bind : { mouseover : function(){ ...
- jquery.rotate.js实现可选抽奖次数和中奖内容的转盘抽奖代码
需求: 抽奖代码最多可以抽奖5次,而且,每次只会中“2000元理财金”或者“谢谢参与”,其它的不会抽中(哈哈,果然都是套路). 效果如下: 一.页面结构: ? 1 2 3 4 5 6 7 8 9 10 ...
- 基于jQuery可悬停控制图片轮播代码
基于jQuery可悬停控制图片轮播代码.这是一款可悬停切换全屏轮播jQuery幻灯片.效果图如下: 在线预览 源码下载 实现的代码: <!-- 轮播广告 --> <div id= ...
- jquery.rotate.js可选抽奖次数和中奖内容的转盘抽奖demo
需求: 最多可以抽奖5次,而且,每次只会中“2000元理财金”或者“谢谢参与”,其它的不会抽中(哈哈,果然都是套路). 效果如下: 一.页面结构: <div class="g-cont ...
- jQuery.rotate.js笔记
1. jQuery.rotate.js是什么 一个开源的兼容多浏览器的jQuery插件用来对元素进行任意角度的旋转动画. 这个库开发的目的是为了旋转img的,在3.x之后的版本可能支持其它元素,但旋转 ...
- js 控制图片大小核心讲解
控制图片大小的方法有很多,在本文将为大家详细介绍下使用js实现缩放图片,核心代码如下,感兴趣的朋友可以参考下 缩放图片脚本分享 <!DOCTYPE HTML PUBLIC "-//W3 ...
- jquery.rotate.js实现旋转动画
1.页面引入jquery.rotate.js文件, 下载地址:https://files.cnblogs.com/files/zhoujl-5071/jquery.rotate.js(打开这个网址,c ...
- [css或js控制图片自适应]
[css或js控制图片自适应]图片自动适应大小是一个非常常用的功能,在进行制作的时候为了防止图片撑开容器而对图片的尺寸进行必要的控制,我们可不可以用CSS控制图片使它自适应大小呢?此个人博客想到了一个 ...
- jQuery.rotate.js参数
CSS3 提供了多种变形效果,比如矩阵变形.位移.缩放.旋转和倾斜等等,让页面更加生动活泼有趣,不再一动不动.然后 IE10 以下版本的浏览器不支持 CSS3 变形,虽然 IE 有私有属性滤镜(fil ...
随机推荐
- 利用BLKTRACE分析IO性能
在Linux系统上,如果I/O发生性能问题,有没有办法进一步定位故障位置呢?iostat等最常用的工具肯定是指望不上的,[容易被误读的iostat]一文中解释过await表示单个I/O所需的平均时间, ...
- 使用serialize时多数据传递
class CartList(APIView): #定义编辑方法 def post(self,request): username = request.POST.get('username') # p ...
- MINIST深度学习识别:python全连接神经网络和pytorch LeNet CNN网络训练实现及比较(三)
版权声明:本文为博主原创文章,欢迎转载,并请注明出处.联系方式:460356155@qq.com 在前两篇文章MINIST深度学习识别:python全连接神经网络和pytorch LeNet CNN网 ...
- Jquery2--属性相关的操作
知识点总结 1.属性 属性(如果你的选择器选出了多个对象,那么默认只会返回出第一个属性). attr(属性名|属性值) - 一个参数是获取属性的值,两个参数是设置属性值 - 点击加载图片示例 remo ...
- es6 模本字符串拼接方法 ``
1.字符串拼接 可以使用 es6 ` ` 配合 ${xxx} 具体操作上代码 <!DOCTYPE html> <html lang="en"> < ...
- .class和.getClass()的区别
使用指定类初始化日志对象,在日志输出的时候,可以打印出日志信息所在类 如: getClass() 返回此 Object 的运行时类. //需要有com.lpx.test.class这个类 Logger ...
- codeforces487A
Fight the Monster CodeForces - 487A A monster is attacking the Cyberland! Master Yang, a braver, is ...
- [WC2007]剪刀石头布(最大流)
洛古 一句话题意:给定一张图,每两点之间有一条有向边或无向边,把所有无向边定向,使图中三元环个数尽量多 因为原图是一个完全图,假设图中任意三点都能构成三元环,那么途中三元环的个数为:\(\binom{ ...
- mysql shell 定时备份
#!/bin/sh if [ ! -d "/data/backup" ]; then mkdir -p /data/backup fi db_user=" ...
- Lua语法基础(二)
1. 函数 1.1 函数声明 默认为全局 局部函数使用local关键字声明 1.2 参数 ...等同于Python中*args三个点表示可变参数 1.3 获取参数长度的两种方式 (1)将传入的参数.. ...