js原生rotate函数
来源:互联网 发布:nba直播数据统计 编辑:程序博客网 时间:2024/05/16 05:20
Document
div{
width: 300px;
height: 20px;
background: red;
margin: 100px 200px;
}
var div = document.getElementsByTagName('div')[0]; rotate(div,'250px','10px'); function rotate(obj,orx,ory){ var enddeg=0; obj.onmousedown=function(ev){ var onoff=0; var startdeg=0; var ndeg=0; if(obj.setCapture) obj.setCapture(); obj.style.transformOrigin=''+orx+' '+ory+'' var disx=obj.offsetLeft; var disy=obj.offsetTop; if(orx=='center'){ disx+=obj.offsetWidth/2; } if(orx=='right'){ disx+=obj.offsetWidth; } var tx=parseInt(orx.substring(0,orx.length-2)); if(orx.substring(orx.length-2)=='px'){ disx+=tx; } if(ory=='top'){ disy-=obj.offsetHeight/2; } if(ory=='bottom'){ disy+=obj.offsetHeight/2; } var ty=parseInt(ory.substring(0,ory.length-2)) if(ory.substring(ory.length-2)=='px'){ disy+=ty; } if(ev.clientX-disx>0){ var x=ev.clientX-disx; var y=ev.clientY-disy; startdeg=Math.atan(y/x)*180/Math.PI }else if(ev.clientY-disy>0){ var x=ev.clientX-disx; var y=ev.clientY-disy; startdeg=Math.atan(-x/y)*180/Math.PI+90 }else{ var x=ev.clientX-disx; var y=ev.clientY-disy; startdeg=Math.atan(y/x)*180/Math.PI+180 } document.onmousemove=function(ev){ var x=ev.clientX-disx; var y=ev.clientY-disy; ndeg=Math.atan(y/x)*180/Math.PI; if(x
0 0
- js原生rotate函数
- js原生函数bind
- JS原生函数总结
- js原生函数bind
- 原生JS 封装运动函数
- 常用原生js自定义函数
- 原生JS操作Date函数
- 原生js封装ajax函数
- js 原生ajax:封装函数
- 原生js---轮播图封装函数
- 原生js封装ajax函数
- JS rotate
- rotate.js
- 原生JS写Ajax的请求函数
- 原生js封装元素运动函数
- 滚轮事件--原生JS函数封装
- 收集的一些原生Js工具函数
- 怎么用原生js封装ajax函数
- Spark总结(一)
- PAT-B 1013. 数素数
- Maximum Depth of Binary Tree
- java学习之路之基本语法-变量-练习题
- sublime 快捷键
- js原生rotate函数
- abababababababababababababababababababababababababababababababababababababababababababababababababab
- Divisibility
- HDOJ 1290 献给杭电五十周年校庆的礼物
- Minimum Depth of Binary Tree
- 257.leetcode Binary Tree Paths(easy)[二叉树深度路径遍历]
- 设计模式---行为类型---解释器
- 【 CodeForces 612A 】 The Text Splitting
- 水仙花数——java