javascript----图片旋转
来源:互联网 发布:php date日期格式化 编辑:程序博客网 时间:2024/04/26 17:56
javaxp微博中的图片旋转我就是参看下面的代码做的:
说明:图片的旋转都是通过操作画布(canvas),但是IE和其他浏览器不一样的地方在于IE通过filter操作,其他浏览器直接改变其属性值就可以了。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>JavaScript Demos - Rotate Image using Canvas</title> <script type="text/javascript" src="jquery-1.8.2.min.js"></script> <script type="text/javascript"> var img = null, canvas = null; $(document).ready(function(){ // Initialize image and canvas img = document.getElementById('image'); canvas = document.getElementById('canvas'); if(!canvas || !canvas.getContext){ canvas.parentNode.removeChild(canvas); } else { img.style.position = 'absolute'; img.style.visibility = 'hidden'; } rotateImage(0); // Handle clicks for control links $('#resetImage').click(function(){ rotateImage(0); }); $('#rotate90').click(function(){ rotateImage(90); }); $('#rotate180').click(function(){ rotateImage(180); }); $('#rotate270').click(function(){ rotateImage(270); });}); function rotateImage(degree){ if(document.getElementById('canvas')){ var cContext = canvas.getContext('2d'); var cw = img.width, ch = img.height, cx = 0, cy = 0; // Calculate new canvas size and x/y coorditates for image switch(degree){ case 90: cw = img.height; ch = img.width; cy = img.height * (-1); break; case 180: cx = img.width * (-1); cy = img.height * (-1); break; case 270: cw = img.height; ch = img.width; cx = img.width * (-1); break; } // Rotate image canvas.setAttribute('width', cw);canvas.setAttribute('height', ch);cContext.rotate(degree * Math.PI / 180);cContext.drawImage(img, cx, cy); } else { // Use DXImageTransform.Microsoft.BasicImage filter for MSIE switch(degree){ case 0: image.style.filter = 'progid:DXImageTransform.Microsoft.BasicImage(rotation=0)'; break; case 90: image.style.filter = 'progid:DXImageTransform.Microsoft.BasicImage(rotation=1)'; break; case 180: image.style.filter = 'progid:DXImageTransform.Microsoft.BasicImage(rotation=2)'; break; case 270: image.style.filter = 'progid:DXImageTransform.Microsoft.BasicImage(rotation=3)'; break; } }}</script><style type="text/css"></style> </head><body> <div id="page"> <h1>How to Rotate Images using JavaScript</h1> <div> <img src="1.jpg" alt="" id="image" /> <canvas id="canvas"></canvas> </div> <p> <strong>Rotate Image: </strong> <a href="javascript:;" id="resetImage">Reset Image</a> <a href="javascript:;" id="rotate90">90°</a> <a href="javascript:;" id="rotate180">180°</a> <a href="javascript:;" id="rotate270">270°</a> </p> </body></html>
- javascript实现图片旋转
- 旋转图片javascript
- javascript实现图片旋转
- javascript----图片旋转
- javascript控制图片旋转
- javascript图片360°旋转
- canvas旋转图片(javascript)
- javascript控制图片旋转2
- javascript做图片放大,缩小,旋转
- JavaScript图片旋转缩放、像素矩阵获取
- javascript 设置图片透明度与图片的水平垂直旋转
- Javascript控制图片围成3D模型旋转展示
- HTML+css+JavaScript 实例应用 图片旋转切换效果
- 图片旋转
- 图片旋转
- 旋转图片
- 图片旋转
- 图片旋转
- uboot第一阶段分析(目前还有很多不懂的地方)
- 海量数据处理分析
- cocos2d-x之码农工作笔记CCEditBox
- 黑马程序员---java基础之GUI
- Android按键事件——上层与驱动的映射
- javascript----图片旋转
- oracle中查看表空间使用情况
- git rebase 的作用
- uva 11258 String Partition
- js中innerHTML与innerText的用法与区别
- 笔记之Servlet的Response对象(应用:文件下载、随机验证码)
- Android学习之 Listview
- Git 备忘
- 王淮经验谈:我的码农原则