用js制作拖曳

  首先我们来分析一下拖曳的步骤,首先当然是你的鼠标在要拖曳的层上按下,然后的事情,可以想象:是一个鼠标跟
随。最后,拖到了目的地,鼠标按键放开,拖曳结束。
  如果你看过本站的事件驱动那你一定知道鼠标按下触发的是mousedown事件,鼠标放开的事件是mouseup,而实现事件驱
动函数的方法是obj.οnmοusedοwn=func;取消的方法是obj.οnmοusedοwn=null;好了,知道了上面的知识,让我们来看看代
码:


<script>
var offy;
var offx;//offy,offx保存了鼠标按下的位置在被拖曳物体内的相对坐标


function drag() {
alll.style.top=event.clientY+document.body.scrollTop-offy;
alll.style.left=event.clientX+document.body.scrollLeft-offx;
return true;
}// 鼠标跟随用的函数
function start_drag() {
offy=event.offsetY;
offx=event.offsetX;
document.οnmοusemοve=drag;
}//开始拖曳(使鼠标跟随有效)
function stop_drag() {
document.οnmοusemοve=null;
}//停止拖曳(使鼠标跟随失效)
</script>
<!--定义一个层alll
<div id=alll style="height:200;width=200" οnmοusedοwn="start_drag()" οnmοuseup="stop_drag()"
οnmοuseοut="stop_drag()">这个层能被拖曳耶!</div>
注:当鼠标按下时开始跟随,鼠标放开或离开层时停止跟随,加入onmouseout是因为有时onmouseup的响应不太好。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值