我没有看过插件,但我假设它是使用跨浏览器支持的 CSS3 转换旋转。它总是需要一个特定的角度,所以你必须用某种变量来跟踪你当前的角度。一个好的解决方案可能是在每次点击时增加一个 HTML5 数据标签,尤其是当您希望在 DOM 中拥有多个旋转图像时。所以说你的 HTML 是这样的:
<div class='image_wrap'>
<img class='image_to_rotate' />
<div class='rotate_btn' data-rotate='0'></div>
</div>
因此,当用户单击旋转按钮时,它将抓取该变量并将其递增 90,然后将新值存储在同一位置,以便在下次单击时将其递增。您的 jQuery 可能如下所示:
$('.rotate_btn').click(function(){
//Grab the current set angle
var angle = parseInt($(this).data('rotate')) + 90;
//Rotate the image
$(this).siblings('.image_to_rotate').rotate(angle);
//Store new angle for next increment
$(this).data('rotate', angle);
})
这没有经过测试,但你应该有足够的东西在这里继续。如果您需要进一步的指导,请查看 .data 上的 jQuery 文档。