当前位置: 首页 > 图文教程 > 网络编程 > Javascript > js 鼠标拖动对象 可让任何div实现拖动效果

Javascript
js 创建一个浮动div的代码
javascript下利用数组缓存正则表达式的实现方法
javascript 最常用的10个自定义函数[推荐]
jQuery 常见开发使用技巧总结
十分钟打造AutoComplete自动完成效果代码
JavaScript 入门基础知识 想学习js的朋友可以参考下
javascript 清空form表单中某种元素的值
javascript 格式化时间日期函数代码脚本之家修正版
javascript dom操作之cloneNode文本节点克隆使用技巧
jQuery 动态酷效果实现总结
jQuery中的常用事件总结
用Jquery实现可编辑表格并用AJAX提交到服务器修改数据
javascript+css 网页每次加载不同样式的实现方法
向大师们学习Javascript(视频与PPT)
js 实现无干扰阴影效果 简单好用(附文件下载)
JavaScript 拾漏补遗
IE6 弹出Iframe层中的文本框“经常”无法获得输入焦点
jQuery的强大选择器小结
jquery $(document).ready() 与window.onload的区别
javascript 动态调整图片尺寸实现代码

Javascript 中的 js 鼠标拖动对象 可让任何div实现拖动效果


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 83 ::
收藏到网摘: n/a

js鼠标拖动对象,可让任何div实现拖动效果,需要的朋友可以参考下。 js鼠标拖动对象:
复制代码 代码如下:

//定义鼠标拖动对象
drag=function (a,o){
var d=document;if(!a)a=window.event;
if(!a.pageX)a.pageX=a.clientX;
if(!a.pageY)a.pageY=a.clientY;
var x=a.pageX,y=a.pageY;
if(o.setCapture)
o.setCapture();
else if(window.captureEvents)
window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP);
var backData = {x : o.style.top, y : o.style.left};
d.onmousemove=function(a){
if(!a)a=window.event;
if(!a.pageX)a.pageX=a.clientX;
if(!a.pageY)a.pageY=a.clientY;
var tx=a.pageX-x+parseInt(o.style.left),ty=a.pageY-y+parseInt(o.style.top);
o.style.left=tx+"px";
o.style.top=ty+"px";
x=a.pageX;
y=a.pageY;
};
d.onmouseup=function(a){
if(!a)a=window.event;
if(o.releaseCapture)
o.releaseCapture();
else if(window.captureEvents)
window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP);
d.onmousemove=null;
d.onmouseup=null;
if(!a.pageX)a.pageX=a.clientX;
if(!a.pageY)a.pageY=a.clientY;
if(!document.body.pageWidth)document.body.pageWidth=document.body.clientWidth;
if(!document.body.pageHeight)document.body.pageHeight=document.body.clientHeight;
if(a.pageX < 1 || a.pageY < 1 || a.pageX > document.body.pageWidth || a.pageY > document.body.pageHeight){
o.style.left = backData.y;
o.style.top = backData.x;
}
};
}

使用方法:
复制代码 代码如下:

<div id="divPhoto" onmousedown="drag(event,this)"></div>