首页 > 语言 > JavaScript > 正文

最精简的JavaScript实现鼠标拖动效果的方法

2024-05-06 16:19:55
字体:
来源:转载
供稿:网友

这篇文章主要介绍了最精简的JavaScript实现鼠标拖动效果的方法,可实现javascript控制鼠标拖动div层效果的方法,需要的朋友可以参考下

相对于其它的鼠标拖动效果,这款拖动特效还是比较精简的,而且它还支持鼠标吸附,不按鼠标左键它也可以会跟随鼠标移动;定义时候也相对方便,只用指定被拖动的DIV ID就可以了,扩展性很好。

 

 
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
  3. <html xmlns="http://www.w3.org/1999/xhtml"
  4. <head> 
  5. <title>鼠标拖动</title> 
  6. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
  7. <script language="JavaScript" type="text/javascript"
  8. var drag_=false 
  9. var D=new Function('obj','return document.getElementById(obj);'
  10. var oevent=new Function('e','if (!e) e = window.event;return e'
  11. function Move_obj(obj){ 
  12. var x,y; 
  13. D(obj).onmousedown=function(e){ 
  14. drag_=true
  15. with(this){ 
  16. style.position="absolute"
  17. var temp1=offsetLeft; 
  18. var temp2=offsetTop; 
  19. x=oevent(e).clientX;y=oevent(e).clientY; 
  20. document.onmousemove=function(e){ 
  21. if(!drag_)return false
  22. with(this){ 
  23. style.left=temp1+oevent(e).clientX-x+"px"
  24. style.top=temp2+oevent(e).clientY-y+"px"
  25. document.onmouseup=new Function("drag_=false"); 
  26. </script> 
  27. <body> 
  28. <div id="drag" style="background-color:#0066CC;width:280px; 
  29. height:160px;padding:20px;border:1px #003399 solid; 
  30. font-size:10.5pt;color:white" onmouseover='Move_obj("drag")'> 
  31. <p>这个层是可以拖动的,而且还可以吸附鼠标,试试看!</p> 
  32. <p>/</p> 
  33. </div> 
  34. </body> 
  35. </html> 

希望本文所述对大家的javascript程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选