JS拖拽元素 兼容IE
来源:互联网 发布:搜达足球数据 编辑:程序博客网 时间:2024/06/07 16:24
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"><head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>Document</title> <style> *{ margin: 0px; padding:0px; } #div1{ width: 500px; height: 500px; position: relative; border:1px solid #ff00ff; top:100px; left: 300px; } #div2{ position: absolute; width: 150px; height: 150px; top:0px; left:0px; background: #ff00ff; } .boxs{ border:1px dashed #000000; position: absolute; } </style> <script> function getpos(ev){ var scrolltop=document.documentElement.scrollTop||document.body.scrollTop; var scrollleft=document.documentElement.scrollLeft||document.body.scrollLeft; return {x:ev.clientX+scrollleft,y:ev.clientY+scrolltop} } function addEvent(obj,even,fn){ /*事件绑定*/ return obj.addEventListener?obj.addEventListener(even,fn,false):obj.attachEvent("on"+even,fn); } function unEvent(obj,even,fn){ return obj.removeEventListener?obj.removeEventListener(even,fn,false):obj.detachEvent("on"+even,fn); } window.onload=function(){ var odiv1=document.getElementById("div1"); odiv2=document.getElementById("div2"); disX=0; disY=0; addEvent(odiv2,"mousedown",function(ev){ var eventr=ev||event; pos=getpos(eventr); disX=pos.x-this.offsetLeft; disY=pos.y-this.offsetTop; creatElement=document.createElement("div"); creatElement.className="boxs"; creatElement.style.width=odiv2.offsetWidth-2+"px"; creatElement.style.height=odiv2.offsetHeight-2+"px"; creatElement.style.top=odiv2.offsetTop+"px"; creatElement.style.left=odiv2.offsetLeft+"px"; div1.appendChild(creatElement); document.onmousemove=function(ev){ var eventr=ev||event; pos=getpos(eventr); creatElement.style.left=pos.x-disX+"px"; creatElement.style.top=pos.y-disY+"px"; if(creatElement.offsetTop<0){ creatElement.style.top=0+"px"; } if(creatElement.offsetLeft<0){ creatElement.style.left=0+"px"; } if(creatElement.offsetTop>odiv1.offsetHeight-odiv2.offsetHeight){ creatElement.style.top=odiv1.offsetHeight-odiv2.offsetHeight+"px"; } if(creatElement.offsetLeft>odiv1.offsetWidth-odiv2.offsetWidth){ creatElement.style.left=odiv1.offsetWidth-odiv2.offsetWidth+"px"; } } document.onmouseup=function(){ odiv2.style.left=creatElement.offsetLeft+"px"; odiv2.style.top=creatElement.offsetTop+"px"; div1.removeChild(creatElement); unEvent(odiv2,"mousedown"); document.onmousemove=null; } return false; }) } </script></head><body> <div id="div1"> <div id="div2"></div> </div></body></html>
0 0
- JS拖拽元素 兼容IE
- JS拖拽元素 兼容IE (未测试)
- js动态添加删除表格元素(兼容IE和Firefox)
- JS事件Event元素(兼容IE,Firefox,Chorme)
- JS事件Event元素(兼容IE,Firefox,Chorme)
- JS事件Event元素(兼容IE,Firefox,Chorme)
- js div拖拽实现兼容ie/firefox js之鼠标位置深入解析
- IE、firefox的js兼容
- [js] 兼容IE和firefox
- js计时器(IE,Firefox兼容)
- IE 与 FF JS兼容
- js trim ie 不兼容
- JavaScript/Js脚本处理html元素的自定义属性(兼容Firefox和IE)
- [转载]JavaScript/Js脚本处理html元素的自定义属性(兼容Firefox和IE)
- javascript/js对html元素自定义属性的操作(兼容Firefox和IE) .
- javascript/js对html元素自定义属性的操作(兼容Firefox和IE)
- js返回最终样式函数,兼容IE和DOM,设置参数:元素对象、样式特性
- JS动态添加HTML自定义属性以及处理HTML元素的自定义属性(兼容FIREFOX和IE)
- 网络相关知识点整理
- 自定义WebConfig
- Windows下,Eclipse的Android NDK(r8e) 配置
- git 版本控制系统
- 十一.2职员有薪水了
- JS拖拽元素 兼容IE
- oracle 最有用的将分隔符字符串转换成数组
- Nginx Location配置总结及基础最佳实践
- hdu1222
- linux内核sk_buff的结构分析
- 当调用方法时出现多个异常类时,对应的两种处理方案
- 数据库放到互联网上方案
- 理解CSS Floats
- 同一个表单提交不同action