首页 > 编程 > JavaScript > 正文

支持IE,firefxo,chrome浏览器下鼠标拖动和拖拽的鼠标指针特效

2019-11-20 13:15:41
字体:
来源:转载
供稿:网友

核心代码:

<!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>鼠标拖动和拖拽的鼠标指针特效</title><style>#box{width:100px;height:100px;background:#966;position:absolute;left:100px;top:100px;cursor:pointer;}</style></head><body><div id="box"></div><script>var doc=document;function getViewport(){  return {width:Math.max(document.documentElement.clientWidth,document.documentElement.scrollWidth),      height:Math.max(document.documentElement.clientHeight,document.documentElement.scrollHeight)  };}function compareNum(x,minNum,maxNum){ switch(true){ case x<minNum:x=minNum;break; case x>maxNum:x=maxNum;break; default:x; } return x; }box.style.left='100px'box.style.top='100px'box.onmousedown=function(e){ var e=e||window.event; var maxL=getViewport().width-100,   maxT=getViewport().height-100; this.startL=parseInt(this.style.left); this.startT=parseInt(this.style.top); //alert(e.clientX) this.startX=e.clientX; this.startY=e.clientY; //alert(maxL+':'+maxT+':'+L+':'+T) doc.onmousemove=function(e){ posXY(e,0,0,maxL,maxT); }; doc.onmouseup=function(){  doc.onmousemove=null; doc.onmouseup=null; }; return false;}function posXY(e,minL,minT,maxL,maxT){  var e=e||window.event; var x=box.startL-(box.startX-e.clientX); var y=box.startT-(box.startY-e.clientY); box.style.left=compareNum(x,minL,maxL)+'px' box.style.top=compareNum(y,minT,maxT)+'px'}</script></body></html>


[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

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