最终代码:


1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 5 <title></title> 6 <meta charset="utf-8" /> 7 <style type="text/css"> 8 #divTest { 9 width : 200px; 10 height : 200px; 11 background-color : red; 12 border : 1px solid #00ffff; 13 position : absolute; 14 } 15 </style> 16 </head> 17 <body> 18 测试一下 19 <div id="divTest"> 20 </div> 21 22 <script type="text/javascript"> 23 var oDiv = document.getElementById("divTest"); 24 oDiv.onmousedown = function (en) { 25 var ev = ev || event; 26 var disX = en.clientX - oDiv.offsetLeft; 27 var disY = en.clientY - oDiv.offsetTop; 28 if (oDiv.setCapture) { 29 oDiv.setCapture(); 30 } 31 32 document.onmousemove = function (en) { 33 var ev = ev || event; 34 oDiv.style.top = en.clientY - disY + 'px'; 35 oDiv.style.left = en.clientX - disX + 'px'; 36 } 37 document.onmouseup = function () { 38 document.onmousemove = null; 39 if (oDiv.releaseCapture) { 40 oDiv.releaseCapture() 41 } 42 } 43 return false;//阻止默认行为(如果页面中有文字,则会默认拖动文字),ie8及一下不行 44 } 45 </script> 46 47 </body> 48 </html>
注意点:
1.获取当前div离上方和左方的距离之前使用了oDiv.style.left,获取不到
2.注意后面加px,老是容易忘记,然后还找不到错误原因浪费事件
3.
4.以后还是得实践,一味的看视频效果并不好,一定要明确最终目的,是需要掌握而不是单纯的看完视频。