js怎么实现一个拖拽事件
时间:2011-10-15
来源:互联网
我是这么做的, 用一个bool值来判断鼠标左键按下, 然后改变元素位置, 但是问题是如果快速移动会丢失目标, 然后不按左键它也会拖拽.......
附带问下怎么让鼠标停在元素上让它消失
附带问下怎么让鼠标停在元素上让它消失
作者: bj050323 发布时间: 2011-10-15
HTML code
记得最近论坛里好像出现过,找了个过来 <!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"> <head> <title>拖拽</title> <style> html,body{height:100%;overflow:hidden;} body,div,h2{margin:0;padding:0;} body{font:12px/1.5 Tahoma;} #win{position:absolute;top:40%;left:33%;width:400px;height:33px;background:#fc0;cursor:move;} #win1{position:absolute;top:59%;left:59%;width:400px;height:33px;background:#fc0;cursor:move;} </style> <script> window.onload = function () { var oWin = document.getElementById("win"); var bDrag = false; var disX = disY = 0; oWin.onmousedown = function (event){ bDrag = true; disX = event.clientX - oWin.offsetLeft; disY = event.clientY - oWin.offsetTop; return false }; document.onmousemove = function (event){ if (!bDrag) return; var iL = event.clientX - disX; var iT = event.clientY - disY; //把图层范围定在浏览器窗口内 var maxL = document.documentElement.clientWidth - oWin.offsetWidth; var maxT = document.documentElement.clientHeight - oWin.offsetHeight; iL = iL < 0 ? 0 : iL; iL = iL > maxL ? maxL : iL; iT = iT < 0 ? 0 : iT; iT = iT > maxT ? maxT : iT; oWin.style.marginTop = oWin.style.marginLeft = 0; oWin.style.left = iL + "px"; oWin.style.top = iT + "px"; return false }; document.onmouseup = function (){ bDrag = false; }; }; </script> </head> <body> <div id="win">0</div> </body> </html>
作者: BLUE_LG 发布时间: 2011-10-15
引用 1 楼 blue_lg 的回复:
HTML code
记得最近论坛里好像出现过,找了个过来
<!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"……
HTML code
记得最近论坛里好像出现过,找了个过来
<!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"……
找专门的网页制作特效的网站。里面有很多。
作者: yisiyou 发布时间: 2011-10-15
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28