js实现图片旋转
类别:Web前端 浏览量:1098
时间:2014-12-14 js实现图片旋转
js实现图片旋转方式一、IE下用DXImageTransform.Microsoft.BasicImage,其它浏览器用rotate(90°--180°--270°)
<!DOCTYPE html>
<html>
<head>
<title>js实现图片旋转</title>
<script>
var userAgent = navigator.userAgent,
isIE = /msie/i.test(userAgent) && !window.opera,
isWebKit = /webkit/i.test(userAgent),
isFirefox = /firefox/i.test(userAgent);
var vOther=0;
var vIE=0;
function turn()
{
vOther+=90;
vIE+=1;
if(vOther==360)
{
other=0;
vIE=0;
}
var target=document.getElementById('demo');
if (isWebKit) {
target.style.webkitTransform = "rotate(" + vOther + "deg)";
} else if (isFirefox) {
target.style.MozTransform = "rotate(" + vOther + "deg)";
} else if (isIE) {
target.style.filter = "progid:DXImageTransform.Microsoft.BasicImage(rotation="+vIE+")";
} else {
target.style.transform = "rotate(" + vOther + "deg)";
}
}
</script>
</head>
<body>
<button onclick='turn()'>旋转</button>
<li id="container" style="width:500px;height:400px;position:relative;margin:0 auto">
<li id="demo">
<img src="http://images.cnblogs.com/cnblogs_com/bluedream2009/201609/o_mm.jpg" width="500" height="333" />
</li>
</li>
</body>
</html>
方式二、IE用 progid:DXImageTransform.Microsoft.Matrix ,其它浏览器用rotate (任意角度)
<!DOCTYPE html>
<html>
<head>
<title>js实现图片旋转</title>
<script>
var
userAgent = navigator.userAgent,
isIE = /msie/i.test(userAgent) && !window.opera,
isWebKit = /webkit/i.test(userAgent),
isFirefox = /firefox/i.test(userAgent);
function rotate(target, degree) {
if (isWebKit) {
target.style.webkitTransform = "rotate(" + degree + "deg)";
} else if (isFirefox) {
target.style.MozTransform = "rotate(" + degree + "deg)";
} else if (isIE) {
degree = degree / 180 * Math.PI;
var sinDeg = Math.sin(degree);
var cosDeg = Math.cos(degree);
target.style.filter = "progid:DXImageTransform.Microsoft.Matrix(" +
"M11=" + cosDeg + ",M12=" + (-sinDeg) + ",M21=" + sinDeg + ",M22=" + cosDeg +
",SizingMethod='auto expand')";
} else {
target.style.transform = "rotate(" + degree + "deg)";
}
}
var perNum=0;
function turn()
{
perNum+=30;
rotate(document.getElementById('demo'), perNum);
}
</script>
</head>
<body>
<button onclick='turn()'>旋转</button>
<li id="container" style="width:500px;height:400px;position:relative;margin:0 auto">
<li id="demo">
<img src="http://images.cnblogs.com/cnblogs_com/bluedream2009/201609/o_mm.jpg" width="500" height="333" />
</li>
</li>
</body>
</html>
标签:javascript
您可能感兴趣
- javascript作用域实例(JavaScript defineProperty如何实现属性劫持)
- javascript编程中的promise(JavaScript如何利用Promise控制并发请求个数)
- JavaScript中实现AES加密解密
- js搜索功能的实现(前端JavaScript实现本地模糊搜索功能的方法实例)
- JavaScript命名空间
- jsfor循环是什么意思(JavaScript中三种for循环语句的使用总结for、for...in、for...of)
- javascript如何实现异步任务(JavaScript 中如何实现并发控制)
- javascript如何操作文档元素(JavaScript操作元素实例大全)
- javascript如何判断类型(JavaScript如何优化逻辑判断代码详解)
- javascript中还原append代码(JS实现jQuery的append功能)
- javascript中的this判定(Javascript中函数分类&this指向的实例详解)
- javascript基本类型是哪些(详解javascript中的Strict模式)
- 用javascript解析json(JavaScript JSON.stringify的使用总结)
- javascript中求二维数组最小值(javascript实现数组最大值和最小值的6种方法)
- javascript函数工具有哪些(如何让你的JavaScript函数更加优雅详解)
- js实现继承的五种(JavaScript继承的三种方法实例)
- 八月再见 愿你岁月不扰,余生静好(八月再见愿你岁月不扰)
- 赏读 八月再见,九月你好(赏读八月再见九月你好)
- 散文 八月再见,九月,我在风中等你(散文八月再见九月)
- 8月再见 9月你好(8月再见)
- 魔兽世界 设计师爆料,原始版本并无PVP,跨阵营属于返璞归真(魔兽世界设计师爆料)
- 吐槽完《弧光大作战》之后,我们和设计师聊了聊魔兽首款手游的立项初衷和未来(吐槽完弧光大作战之后)
热门推荐
- css 最高层级(浅谈CSS 权值 层叠 重要性!important)
- mysql高可用集群(MySQL之高可用集群部署及故障切换实现)
- python线程自动停止了(解决Python中定时任务线程无法自动退出的问题)
- fileoutstream使用方法(Filestream使用简单步骤总结)
- html5中的语义化标签有哪些(详解HTML5常用的语义化标签)
- mysql图形化管理工具
- 织梦安装程序(windowsxp下织梦后台如何安装)
- python eval函数原理(浅谈Python中eval的强大与危害)
- html5发送文字特效(HTML5调用手机发短信和打电话功能)
- mysql恢复数据库(MySQL 两种恢复数据的方法)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9