Draggable(拖动)组件

学习要点:

  1.加载方式

  2.属性列表

  3.事件列表

  4.方法列表

本节课重点了解 EasyUI 中 Draggable(拖动)组件的使用方法,这个组件不依赖于其 他组件。

一.加载方式

//class 加载方式
<div id="box" class="easyui-draggable" style="width:400px;height:200px;background:red;">
  内容部分
</div>
//JS 加载调用
$('#box').draggable();

draggable()将一个元素实行拖拽方法,接收一个对象,对象里是属性

二.属性列表

revert false/boolean 设置为 true,则拖动停止时返回起始位置,拖动停止时返回起始位置

$(function () {
$('#box').draggable({
revert:'true' //拖动停止时返回起始位置
});
});

cursor move/string 拖动时的 CSS 指针样式,拖动时的 CSS 鼠标指针样式

$(function () {
$('#box').draggable({
// revert:'true' //拖动停止时返回起始位置
cursor:'move' //拖动时的 CSS 鼠标指针样式
});
});

Proxy null/string、function当使用'clone',则克隆一个替代元素拖动。如果指定一个函数,则自定义替代元素。 克隆元素拖动

$(function () {
$('#box').draggable({
// revert:'true' //拖动停止时返回起始位置
// handle:'#pox' //就是设置拖动元素里指定的元素才可以拖动,值为可拖动元素的id
// disabled:true //禁止拖动
// edge:20 //设置可拖动区域在区块里的宽度,相当于css的外边距
// axis:'h' //设置拖动为垂直'v',还是水平'h'
proxy: function (source) {
var p = $('<div style="border:1px solid #ccc; width:400px; height:200px;"></div>');
p.html($(source).html()).appendTo('body');
return p;
}
});
});
$(function () {
$('#box').draggable({
// revert:'true' //拖动停止时返回起始位置
// handle:'#pox' //就是设置拖动元素里指定的元素才可以拖动,值为可拖动元素的id
// disabled:true //禁止拖动
// edge:20 //设置可拖动区域在区块里的宽度,相当于css的外边距
// axis:'h' //设置拖动为垂直'v',还是水平'h'
Proxy:'clone', //克隆元素拖动
deltaX:20, //拖动时鼠标在元素的x位置
deltaY:20 //拖动时鼠标在元素的y位置
//以上3个一搬配合使用
});
});

deltaX null/number 被拖动的元素对应于当前光标位置 x  ,拖动时鼠标在元素的x位置

$(function () {
$('#box').draggable({
// revert:'true' //拖动停止时返回起始位置
// handle:'#pox' //就是设置拖动元素里指定的元素才可以拖动,值为可拖动元素的id
// disabled:true //禁止拖动
// edge:20 //设置可拖动区域在区块里的宽度,相当于css的外边距
// axis:'h' //设置拖动为垂直'v',还是水平'h'
Proxy:'clone', //克隆元素拖动
deltaX:20, //拖动时鼠标在元素的x位置
deltaY:20 //拖动时鼠标在元素的y位置
//以上3个一搬配合使用
});
});

deltaY null/number 被拖动的元素对应于当前光标位置 y,拖动时鼠标在元素的y位置

$(function () {
$('#box').draggable({
// revert:'true' //拖动停止时返回起始位置
// handle:'#pox' //就是设置拖动元素里指定的元素才可以拖动,值为可拖动元素的id
// disabled:true //禁止拖动
// edge:20 //设置可拖动区域在区块里的宽度,相当于css的外边距
// axis:'h' //设置拖动为垂直'v',还是水平'h'
Proxy:'clone', //克隆元素拖动
deltaX:20, //拖动时鼠标在元素的x位置
deltaY:20 //拖动时鼠标在元素的y位置
//以上3个一搬配合使用
});
});

handle null/selector 开始拖动的句柄,就是设置拖动元素里指定的元素才可以拖动,值为可拖动元素的id

$(function () {
$('#box').draggable({
// revert:'true' //拖动停止时返回起始位置
handle:'#pox' //就是设置拖动元素里指定的元素才可以拖动,值为可拖动元素的id
});
});

disabled false/boolean 设置为 true,则停止拖动,禁止拖动

$(function () {
$('#box').draggable({
// revert:'true' //拖动停止时返回起始位置
// handle:'#pox' //就是设置拖动元素里指定的元素才可以拖动,值为可拖动元素的id
disabled:true //禁止拖动
});
});

edge 0/number 可以在其中拖动的容器的宽度,设置可拖动区域在区块里的宽度,相当于css的外边距,如设置20,则区块上下左右20px的范围不可以拖动

$(function () {
$('#box').draggable({
// revert:'true' //拖动停止时返回起始位置
// handle:'#pox' //就是设置拖动元素里指定的元素才可以拖动,值为可拖动元素的id
// disabled:true //禁止拖动
edge:20 //设置可拖动区域在区块里的宽度,相当于css的外边距
});
});

axis null/string 设置拖动为垂直'v',还是水平'h',设置拖动为垂直'v',还是水平'h'

$(function () {
$('#box').draggable({
// revert:'true' //拖动停止时返回起始位置
// handle:'#pox' //就是设置拖动元素里指定的元素才可以拖动,值为可拖动元素的id
// disabled:true //禁止拖动
// edge:20 //设置可拖动区域在区块里的宽度,相当于css的外边距
axis:'h' //设置拖动为垂直'v',还是水平'h'
});
});

三.事件列表

onBeforeDrag e 拖动之前触发,返回 false 将取消拖动

$(function () {
$('#box').draggable({
onBeforeDrag:function (e) { // 拖动之前触发,返回 false 将取消拖动
alert('拖动之前触发');
return false;
}
});
});

onStartDrag e 拖动开始时触发

$(function () {
$('#box').draggable({
onStartDrag: function (e) {
alert('拖动开始时触发');
}
});
});

onDrag e 拖动过程中触发,不能拖动时返回 false

$(function () {
$('#box').draggable({
onDrag: function (e) {
alert('拖动过程中触发,不能拖动时返回 false');
}
});
});

onStopDrag e 拖动停止时触发

$(function () {
$('#box').draggable({
onStopDrag: function (e) {
alert('拖动停止时触发');
}
});
});

四.方法列表

options  none 返回属性对象

$(function () {
$('#box').draggable({
revert:'true' //拖动停止时返回起始位置
});
// $('#box').draggable('disable'); //disable none 禁止拖动
// $('#box').draggable('enable'); //enable none 允许拖动
alert($('#box').draggable('options')); //返回属性对象
});

proxy  none 如果代理属性被设置则返回该拖动代理元素

$(function () {
$('#box').draggable({
onStartDrag: function (e) {
alert($('#box').draggable('proxy'));
}
});
});

enable  none 允许拖动

$(function () {
$('#box').draggable({ });
$('#box').draggable('disable'); //disable none 禁止拖动
$('#box').draggable('enable'); //enable none 允许拖动
});

disable  none 禁止拖动

$(function () {
$('#box').draggable({ });
$('#box').draggable('disable'); //disable none 禁止拖动
$('#box').draggable('enable'); //enable none 允许拖动
});

$.fn.draggable.defaults 重写默认值对象

PS:我们可以使用$.fn.draggable.defaults 重写默认值对象。

$(function () {
$.fn.draggable.defaults.cursor = 'text'; //重写默认值对象,重写后以后的拖动都是这个默认鼠标指针 $('#box').draggable({ });
});

第一百九十三节,jQuery EasyUI,Draggable(拖动)组件的更多相关文章

  1. 第三百九十三节,Django+Xadmin打造上线标准的在线教育平台—Xadmin后台进阶开发配置

    第三百九十三节,Django+Xadmin打造上线标准的在线教育平台—Xadmin后台进阶开发配置 设置后台某个字段的排序规则 在当前APP里的adminx.py文件里的数据表管理器里设置 order ...

  2. 第一百九十五节,jQuery EasyUI,Resizable(调整大小)组件

    jQuery EasyUI,Resizable(调整大小)组件 学习要点: 1.加载方式 2.属性列表 3.事件列表 4.方法列表 本节课重点了解 EasyUI 中 Resizeable(调整大小)组 ...

  3. 第一百九十四节,jQuery EasyUI,Droppable(放置)组件

    jQuery EasyUI,Droppable(放置)组件 学习要点: 1.加载方式 2.属性列表 3.事件列表 4.方法列表 本节课重点了解 EasyUI 中 Droppable(放置)组件的使用方 ...

  4. 第一百九十九节,jQuery EasyUI,Panel(面板)组件

    jQuery EasyUI,Panel(面板)组件 学习要点: 1.加载方式 2.属性列表 3.事件列表 4.方法列表 本节课重点了解EasyUI中Panel(面板)组件的使用方法,这个组件不依赖于其 ...

  5. 第一百九十八节,jQuery EasyUI,ProgressBar(进度条)组件

    jQuery EasyUI,ProgressBar(进度条)组件 学习要点: 1.加载方式 2.属性列表 3.事件列表 4.方法列表 本节课重点了解 EasyUI 中 ProgressBar(进度条) ...

  6. 第一百九十六节,jQuery EasyUI,Tooltip(提示框)组件

    jQuery EasyUI,Tooltip(提示框)组件 学习要点: 1.加载方式 2.属性列表 3.事件列表 4.方法列表 本节课重点了解 EasyUI 中 Tooltip(提示框)组件的使用方法, ...

  7. jQuery Easy UI Draggable(拖动)组件

    上文已经提到过了 jQuery EasyUI插件引用一般我们经常使用的有两种方式(排除easyload载入方式),所以本篇要总结的Draggable组件相同有两种方式载入: (1).使用class载入 ...

  8. jQuery EasyUI 的editor组件使用

    问题:最近在优化一个项目时,前端用到了 easyui这个插件来实现表格,搞了很久,才实现出一部分功能,但是还是有很多地方不熟悉,故记录一下,以后再研究 第一个实例------------------- ...

  9. JQuery EasyUI的常用组件

    jQuery EasyUI 是一个基于 jQuery 的框架,集成了各种用户界面插件,该框架提供了创建网页所需的一切,帮助您轻松建立站点. 注:本次介绍的JQuery EasyUI版本为1.5版. 一 ...

随机推荐

  1. 【POI】对于POI无法处理超大xls等文件,官方解决方法【已解决】【多线程提升速率待定】

    本次使用POI处理xlsx文件,莫名的遇到了一个无法逾越的问题. 总共71个xlsx文件,单个文件最大达到50M以上,71个xls文件摆在那里就有3-4G的大小. 在起始处理的时候,发现原本适用于正常 ...

  2. Oracle里面的用户user无法登录 LOCKED(TIMED)

    SQL>conn test/test 还是报同样的错误,这就奇怪了.看看dba_users中该用户的状态等信息 SQL>select account_status,lock_date,pr ...

  3. 采用Apache作为WebLogic Server集群的负载均衡器

    强烈建议不要使用WebLogic ClusterServlet作为Proxy进行生产环境的负载均衡, 那个是用来进行集群的功能测试的,Oracle的产品文挡也写得比较清楚. 如果采用软件的负载均衡,可 ...

  4. Go 测试单个方法/性能测试

    Go 测试单个方法 gotest.go package mytest import ( "errors" ) func Division(a, b float64) (float6 ...

  5. Keen Team

    Keen Team (碁震安全研究团队,KeenTeam)是一支由在信息安全理论和技术研究方面全球领先的中国“白帽”安全专家组成的信息安全研究队伍,成员主要来自微软的安全漏洞研究.安全攻击和防御技术研 ...

  6. hadoop提交作业自定义排序和分组

    现有数据如下: 3 3 3 2 3 1 2 2 2 1 1 1 要求为: 先按第一列从小到大排序,如果第一列相同,按第二列从小到大排序 如果是hadoop默认的排序方式,只能比较key,也就是第一列, ...

  7. go get 下载的包放在哪里呢?

    有些问题,我以前都是似懂非懂,没有去弄个究竟!!!!! 这个习惯非常不好,搞得有些东西看似懂了,又不能百分之百说自己懂了,可能下次就弄不出来了,这样是不可取的. 不能有这种做事的风格. ------- ...

  8. Linux下SVN服务器搭建(CentOS+Subversion)--转

    svn(subversion)是近年来崛起的版本管理工具,是CVS的接班人.目前,绝大多数开源软件都使用svn作为代码版本管理软件.svn 服务器有2种运行方式:独立服务器和借助apache等web服 ...

  9. maven 打包不全(xml,properties文件没打进包)解决方案

    在pom.xml的build标签中加入以下代码即可 <build> <resources>            <resource>               ...

  10. 【android相关】【问题解决】R.java文件丢失

    在进行android开发过程中,有时候,我们会遇到gen文件中R.java丢失的现象.重新build,或者clean工程,close并重新打开Project,但有时也没解决. 这可能是由于不小心把xm ...