helo,今天西西南教你写个JQ实现物体的拖拽,相比较于原生js,用jq来写拖拽可以省略很多代码,简化我们的工作量,同时还有很多神奇的js所没有的特效,话不多说,让我们来看一下(注:css别忘记设置绝对定位,否则再怎么写物体也不会动):
- 首先要记录当前div(要点击的那个)的相对位置offsetX和offsetY,让他们初始位置为0;
- 给div添加鼠标点击事件,然后获取鼠标当前点击的相对位置,此时的相对位置为当前的鼠标位置减去div距左的距离;
- 完成上述步骤后就可以添加mousemove事件来移动div了,同时我写的代码是多个div,所以此时写this要定义一个否则电脑就认不出是哪一个;此只需改变当前this的css的left和top值就可以了;
- 最后写一个鼠标离开事件,要是不写那可就停不下了啊。
最后上一下代码,大家看一下:
.
这是jq部分
<script src = '../jquery-1.10.1.min.js'></script>
<script>
$(function(){
var offsetX = 0;
var offsetY = 0;
$("div").mousedown(function(ev)