我见过一些JavaScript图像旋转器,它们使用HTML5 canvas元素或对服务器端脚本的AJAX调用,但是可以不使用这些方法吗? Internet Explorer不支持canvas(我知道excanvas,但是如果可能的话我想不用)并且我不确定AJAX是否足够流畅。如果有办法,是否有任何开源脚本,示例或资源可以指向我?
唉,CSS不支持以任何方式,形状或形式旋转图像(除非你计算CSS Transforms,它只支持Safari 4和Firefox 3.1)。
你最好的选择是使用Raphael的image()和rotate(),它应该支持所有半现代浏览器(使用SVG)和大多数IE版本(使用VML)。
这个jQuery插件适用于主流浏览器,包括IE:http://wilq32.googlepages.com/wilq32.rollimage222。它使用了excanvas,但至少它允许你评估该方法是否足够好用于你的目的。
谷歌是你的朋友:http://www.walterzorn.com/rotate_img/rotate_img.htm
但是这种技术(如上所述)的缺点是它通过插入大量DIVS来使用黑客攻击,因此它可能会使浏览器变慢。谨慎使用。像这样的问题是为什么首先创建canvas标签的原因。
是的,通过CSS转换:
var degree=180;
document.getElementById('image_name').style.transform='rotate('+degree+'deg)';