javascript——拖拽原理小实例
2015-03-23 16:59
239 查看
CSS代码:
HTML代码:
JS代码:
JS-demo2:
#div1{ width: 100px; height: 100px; background: green; position: absolute;}
HTML代码:
<div id="div1"></div>
JS代码:
/* onmousedown : 选择元素 onmousemove : 移动元素 onmouseup : 释放元素 */ window.onload = function(){ var oDiv = document.getElementById('div1'); //鼠标按下时 oDiv.onmousedown = function(ev){ var ev = ev || event; // 获取鼠标点击时的距离位置 var disX = ev.clientX - this.offsetLeft; var disY = ev.clientY - this.offsetTop ; //鼠标移动时 document.onmousemove = function(ev){ var ev = ev || event; oDiv.style.left = ev.clientX - disX + 'px'; oDiv.style.top = ev.clientY - disY + 'px'; }; //鼠标释放时 document.onmouseup = function(){ document.onmousemove = document.onmouseup = null; } }; };
JS-demo2:
window.onload = function(){ /* 1.拖拽的时候,如果有文字被选中,会产生问题 原因:当鼠标按下的时候,如果页面中有文字被选中,那么会触发浏览器默认拖拽文字的效果 解决: 标准:阻止默认行为 非标准ie:全局捕获 */ var oDiv = document.getElementById('div1'); oDiv.onmousedown = function(ev){ var ev = ev || event; var disX = ev.clientX - this.offsetLeft; var disY = ev.clientY - this.offsetTop; if(oDiv.setCapture){ oDiv.setCapture(); } document.onmousemove = function(ev){ var ev = ev || event; oDiv.style.left = ev.clientX - disX + 'px'; oDiv.style.top = ev.clientY - disY + 'px'; }; document.onmouseup = function(){ document.onmousemove = document.onmouseup = null; if(oDiv.releaseCapture){ oDiv.releaseCapture(); } return false; }; }; };
相关文章推荐
- js/ajax跨域访问—jsonp的原理和实例(javascript和jquery)
- JavaScript对象创建及继承原理实例解剖
- Javascript 拖拽的一些简单的应用(逐行分析代码,让你轻松了拖拽的原理)
- Javascript 拖拽的一些简单的应用——逐行分析代码,让你轻松了解拖拽的原理
- Javascript 拖拽雏形中的一些问题——逐行分析代码,让你轻松了解拖拽的原理
- JavaScript 拖放(拖拽、拖动)层效果(程序原理+深度分析)
- 每天一个JavaScript实例-html5拖拽
- Javascript 拖拽的一些高级的应用(逐行分析代码,让你轻松了拖拽的原理)
- Javascript 拖拽的一些简单的应用(逐行分析代码,让你轻松了拖拽的原理)
- javascript拖拽原理与简单实现方法[demo]
- Javascript 拖拽雏形——逐行分析代码,让你轻松了解拖拽的原理
- 每天一个JavaScript实例-html5拖拽
- Javascript 拖拽的一些高级的应用(逐行分析代码,让你轻松了拖拽的原理)
- Javascript 拖拽的一些高级的应用——逐行分析代码,让你轻松了拖拽的原理
- js/ajax跨越访问-jsonp的原理和实例(javascript和jquery实现代码)
- js/ajax跨越访问-jsonp的原理和实例(javascript和jquery实现代码)
- Javascript 拖拽的一些简单的应用——逐行分析代码,让你轻松了解拖拽的原理
- Javascript 拖拽雏形中的一些问题(逐行分析代码,让你轻松了拖拽的原理)
- JavaScript实现可拖拽的拖动层Div实例