我尝试制作一个切换按钮,每次单击时,我的图像(箭头)将旋转180度:
<a href='#' onclick='$(\"#divToggle\").slideToggle(\"slow\");'>
<img src='blue_down_arrow.png' onclick='$(this).rotate(180);' /></a>
<div id='divToggle' style='display:none;'>...CONTENT...</div>";这段代码切换我的div,但图像只在第一次单击时旋转,然后保持“向上”。我正在使用这个:http://code.google.com/p/jqueryrotate/
发布于 2013-01-18 18:25:22
这是因为旋转角度的值是绝对值,而不是基于上次旋转。
工作代码:
jQuery
var rotate_factor = 0;
function rotateMe(e) {
rotate_factor += 1;
var rotate_angle = (180 * rotate_factor) % 360;
$(e).rotate({angle:rotate_angle});
}HTML
<img src='blue_down_arrow.png' onclick='rotateMe(this);' /></a>更新:更短的代码
var rotate_angle = 0;
<img src='blue_down_arrow.png' onclick='rotate_angle = (rotate_angle + 180) % 360; $(this).rotate(rotate_angle);' /></a>发布于 2013-01-18 18:30:41
你可以这样写。demo
jQuery(document).ready(function(){
var deg_temp =45;
jQuery("#image1").click(function(){
deg_temp = deg_temp+30;
jQuery(this).rotate(deg_temp);
})
});发布于 2013-01-18 18:28:56
Click to see CSS3 transition demo
看看这个演示。它使用CSS3进行过渡+变换旋转
.testRotate{
-moz-transition: transform 1s;
-webkit-transition: transform 1s;
transition: transform 1s;
}
.testRotate:hover{
transform: rotate(45deg);
-moz-transform: rotate(45deg);
-webkit-transform: rotate(45deg);
}这些是本演示的重要组成部分=)
https://stackoverflow.com/questions/14396614
复制相似问题