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作用域实例(JavaScript defineProperty如何实现属性劫持)
- jscanvas背景色(JavaScript canvas实现代码雨效果)
- JavaScriptSerializer对Json对象的序列化和反序列化
- js 图片编辑处理库(javascript input图片上传及预览,FileReader预览图片)
- 在html中使用javascript实例代码(原生 JS+CSS+HTML 实现时序图的方法)
- js怎么做一个计时器(JavaScript实现简单计时器)
- js三级联动列表(基于JavaScript实现年月日三级联动)
- js使用递归解析(关于JavaScript递归经典案例题详析)
- html注册表单验证代码(JavaScript+html实现前端页面随机二维码验证)
- pyqt5加载chrome浏览器(PyQt5内嵌浏览器注入JavaScript脚本实现自动化操作的代码实例)
- JavaScript中实现AES加密解密
- JavaScript命名空间
- html基础知识javascript(JavaScript+html实现前端页面滑动验证)
- JavaScript 阻止超链接跳转的操作方法(多种写法)(JavaScript 阻止超链接跳转的操作方法多种写法)
- javascript里字符串描述(JavaScript字符串操作的四个实用技巧)
- 《傲骨之战》剧终 律政女魔头Diane,为什么是大女主天花板(傲骨之战剧终律政女魔头Diane)
- 汉族(汉族的祖先是谁)
- 中国有几个名族(中国有几个民族没列入56个民族)
- 数学语文题目(语文的数学题)
- 香蕉(香蕉三种人不宜吃)
- 没钱可以快乐吗(没钱也能快乐吗)
热门推荐
- vue滚动条下拉翻页(Vue中利用better-scroll组件实现横向滚动功能)
- 对mysql索引的理解(详解MySQL 8.0 之不可见索引)
- python中tryexcept的用法(对python中的try、except、finally 执行顺序详解)
- docker部署php本地开发环境(CentOS7环境下使用Docker搭建PHP运行环境的过程详解)
- dede的数据库在哪(dede后台Fatal error: Allowed memory size of 8388608 bytes exhausted问题的解决方)
- dedecms添加底部链接(详解如何修改织梦模板dedeCMS友情链接为下拉式)
- oracle删除表后怎么清理磁盘空间(Oracle 删除用户和表空间详细介绍)
- mysql内部有4种常见日志(MySQL 慢日志相关知识总结)
- vue实现一个炫酷的日历组件(vue利用Moment插件格式化时间的实例代码)
- mysql的存储方法(MySQL中的binary类型使用操作)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9