举一个例子:css
<div class="box">jquery
<div id="draggable">浏览器
<p>Drag me around</p>ui
<a class="test">notDrag me</a>this
</div>spa
</div>插件
使用方法:对象
$( "#draggable" ).draggable(); 事件
注意:使用以前要加上 jquery 和 jquery-ui 两个类库。ci
注意:jquery 2.0以上不支持ie6 7 8 ,因此想让因此浏览器都支持插件中的东西,请使用jquery2.0如下的版本。
(一)具体参数的解释:
1 zIndex: 100 //表示拖动的时候给拖动的标签加上的z-index值,不拖动的时候,z-index值还原。
2 containment: "parent" //表示移动的范围是针对 父级元素,不会超过父级元素。
containment: ".box" //表示移动的范围是在 box 的内部,不会在box外部移动。
3 axis: "x", //表示只能够在x轴上移动
axis: "y" //表示只能够在y轴上移动。
4 cancel: ".test" //表示取消 class="test" 标签的拖拽
5 cursor: "pointer" //标签拖动的时候,鼠标的状态。
6 delay: "300" //表示拖动的时候,拖动延迟。
7 disabled: "false" //表示是禁止或是执行。
8 opacity: 0.5 //表示拖动的时候,调整透明度
9 addClass: false //表示是否添加class
10 revert: true //表示 中止的时候是否回到初始的位置;
11 revertDuration: 200 //表示中止的时候回到默认设置的时间
使用方法:
$("#draggable").draggable(function(){
zIndex:100,
containment:"parent",
axis:"x",
cancel:".test",
......
});
(二)具体事件的解释:
create: function(event,ui){ //建立的时候,执行的方法, 好比添加css或是别的。
//ui.position 表示相对当前对象,鼠标的坐标值对象{top,left}
//ui.offset 表示相对于当前页面,鼠标的坐标值对象{top,left}
}
drag: function(){ //拖拽的时候,执行的方法, 好比添加css或是别的。
}
start:function(){ //开始的时候,执行的方法 ,好比添加css或是别的。
}
stop:function(){ //中止的时候, 执行的方法,好比移除css或是别的。
}
具体的使用事件的方法:
$("#draggable").draggable(function(){
create:function(){
$(this).addClass("cur");
},
drag:function(){
$(this).addClass("active");
},
start:function(){
$(this).addClass("active");
},
stop:function(){
$(this).removeClass("active");
}
});
(三)具体方法的解释:
destory 删除拖拽功能,
disable 拖动禁用
enable 拖动使用
option
widget
具体的使用事件的方法:
$("#draggable").draggable(destory);