JS拖动技术--- 关于setCapture
2008-04-07 12:10
531 查看
<script type="text/javascript">
<!--
window.onload=function(){
objDiv = document.getElementById('drag');
drag(objDiv);
};
function drag(dv){
dv.onmousedown=function(e){
var d=document;
e = e || window.event;
var x= e.layerX || e.offsetX;
var y= e.layerY || e.offsetY;
//设置捕获范围
if(dv.setCapture){
dv.setCapture();
}else if(window.captureEvents){
window.captureEvents(Event.MOUSEMOVE | Event.MOUSEUP);
}
d.onmousemove=function(e){
e= e || window.event;
if(!e.pageX)e.pageX=e.clientX;
if(!e.pageY)e.pageY=e.clientY;
var tx=e.pageX-x;
var ty=e.pageY-y;
dv.style.left=tx;
dv.style.top=ty;
};
d.onmouseup=function(){
//取消捕获范围
if(dv.releaseCapture){
dv.releaseCapture();
}else if(window.captureEvents){
window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP);
}
//清除事件
d.onmousemove=null;
d.onmouseup=null;
};
};
}
//-->
</script>
--------
<div id="drag" >drag me <div>
<!--
window.onload=function(){
objDiv = document.getElementById('drag');
drag(objDiv);
};
function drag(dv){
dv.onmousedown=function(e){
var d=document;
e = e || window.event;
var x= e.layerX || e.offsetX;
var y= e.layerY || e.offsetY;
//设置捕获范围
if(dv.setCapture){
dv.setCapture();
}else if(window.captureEvents){
window.captureEvents(Event.MOUSEMOVE | Event.MOUSEUP);
}
d.onmousemove=function(e){
e= e || window.event;
if(!e.pageX)e.pageX=e.clientX;
if(!e.pageY)e.pageY=e.clientY;
var tx=e.pageX-x;
var ty=e.pageY-y;
dv.style.left=tx;
dv.style.top=ty;
};
d.onmouseup=function(){
//取消捕获范围
if(dv.releaseCapture){
dv.releaseCapture();
}else if(window.captureEvents){
window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP);
}
//清除事件
d.onmousemove=null;
d.onmouseup=null;
};
};
}
//-->
</script>
--------
<div id="drag" >drag me <div>
相关文章推荐
- JS拖动技术--- 关于setCapture (转自 剑胆琴心-.Net学习笔记)
- JS拖动技术--- 关于setCapture
- [转载]JS拖动技术--- 关于setCapture
- JS拖动技术--- 关于setCapture
- JS拖动技术--- 关于setCapture
- JS拖动技术 关于setCapture使用
- JS高级拖动技术 setCapture,releaseCapture
- JS高级拖动技术 setCapture,releaseCapture
- JS高级拖动技术 setCapture,releaseCapture-javascript技巧
- JS高级拖动技术--- setCapture ,releaseCapture
- JS高级拖动技术 setCapture,releaseCapture
- 关于zTree的使用心得以及相关的JS技术总结
- 关于MFC中CDHtmlDialog嵌入flash和调用JS一些技术总结
- JS拖动技术
- 关于prototype.js的一些技术说明 bind bindAsEventLinstener
- JS拖动–setCapture
- JS图片拖动事件之setCapture方法(适用主流浏览器)
- js 技术关于 ajax 的跨域问题
- 技术总结:关于JS执行前台和后台顺序的.另外一个是前后和后台变量的交互的.