无论如何,先感谢一下我的同事,而且还是妹子,为了帮我,给我写了一个这个可拖动的div的代码,所有的代码都是用hbuilder工具写的,工具可以自己去百度搜索。
这个是给我基础测试题的哪个实习生教我的,我的思路一直在增加监听事件哪块。但是,别人一说我突然恍然大悟,原来还是可以通过事件绑定到对应的js就可以了,,感觉自己的思路不对,解决问题的思路不对,很多事情要做过之后才能懂,其实很多时候看书就是通过简单的代码了解一个思维逻辑,然后加以引用而已。
<!DOCTYPE html> <html> <head runat="server"> <title></title> <style> #mov{ background-color: #00DDCC; width: 200px; height: 200px; top: 100px; left: 100px; position: absolute; } </style> <script> var mouseX, mouseY; var objX, objY; var isDowm = false; function mouseDown(obj, e) { var div = document.getElementById("mov"); obj.style.cursor = "move"; objX = div.offsetLeft; objY = div.offsetTop; mouseX = e.clientX; mouseY = e.clientY; isDowm = true; } function mouseMove(e) { var div = document.getElementById("mov"); var x = e.clientX; var y = e.clientY; if (isDowm) { div.style.left = parseInt(objX) + parseInt(x) - parseInt(mouseX) + "px"; div.style.top = parseInt(objY) + parseInt(y) - parseInt(mouseY) + "px"; } } function mouseUp(e) { if (isDowm) { var x = e.clientX; var y = e.clientY; var div = document.getElementById("mov"); div.style.left = parseInt(objX) + parseInt(x) - parseInt(mouseX) + "px"; div.style.top = parseInt(objY) + parseInt(y) - parseInt(mouseY) + "px"; div.style.cursor = "default"; isDowm = false; } } </script> </head> <body> <div id="mov" οnmοusedοwn="mouseDown(this,event)" οnmοusemοve="mouseMove(event)" οnmοuseup="mouseUp(event)"></div> </body> </html>
