Tdrag
Tdrag属于拖拽类的一款插件,基于jquery而成,兼容1.4以上版本的jquery,兼容浏览器:chrome、firfox、IE7等以上主流浏览器
插件加载
<script type="text/javascript" src="JavaScript/jquery1.7.2.js"></script>
<script type="text/javascript" src="JavaScript/Tdrag.js"></script>
插件调用
html代码:
<div class="div1"></div>
js代码:
$(".div1").Tdrag();
父级限制
html代码:
<div class="boxList">
<div class="div3"></div>
</div>
js代码:
$(".div3").Tdrag({
scope:".boxList"
});
拖拽规范网格
html代码:
<div class="boxList">
<div class="div4"></div>
</div>
js代码:
$(".div4").Tdrag({
scope:".boxList",
grid:[50,50]
});
X轴拖拽或者Y轴拖拽
html代码:
<div class="boxList">
<div class="one onlyX"></div>
<div class="one onlyY"></div>
</div>
js代码:
$(".onlyX").Tdrag({
scope:".boxList",
axis:"x"
});
$(".onlyY").Tdrag({
scope:".boxList",
axis:"y"
});
记住位置
html代码:
<div class="one div5"></div>
js代码:
$(".div5").Tdrag({
pos:true
});
拖拽块内指定区域
html代码:
<div class="boxList">
<div class="one div6">
<div class="title">title</div>
</div>
</div>
js代码:
$(".div6").Tdrag({
scope:".boxList",
handle:".title"
});
点住、移动、结束时的回调函数
html代码:
<div class="boxList">
<div class="one div7">
</div>
<div>
start:<p class="start">0</p>
move:<p class="move">0</p>
end:<p class="end">0</p>
</div>
</div>
js代码:
$(".div7").Tdrag({
scope:".boxList",
cbStart:function(){$(".start").html(Number($(".start").html())+1)},//移动前的回调函数
cbMove:function(){$(".move").html(Number($(".move").html())+1)},//移动中的回调函数
cbEnd:function(){$(".end").html(Number($(".end").html())+1)}//移动结束时候的回调函数
});
多个块换位拖拽
html代码:
<div class="boxList">
<div class="one div8"><div class="title">1</div></div>
<div class="one div8"><div class="title">2</div></div>
<div class="one div8"><div class="title">3</div></div>
<div class="one div8"><div class="title">4</div></div>
<div class="one div8"><div class="title">5</div></div>
<div class="one div8"><div class="title">6</div></div>
<div class="one div8"><div class="title">7</div></div>
<div class="one div8"><div class="title">8</div></div>
<div class="one div8"><div class="title">9</div></div>
<div class="one div8"><div class="title">10</div></div>
</div>
js代码:
$(".div8").Tdrag({
scope:".boxList",
pos:true,
dragChange:true
});
排序换位拖拽
html代码:
<div class="boxList">
<div class="one div9"><div class="title">1</div></div>
<div class="one div9"><div class="title">2</div></div>
<div class="one div9"><div class="title">3</div></div>
<div class="one div9"><div class="title">4</div></div>
<div class="one div9"><div class="title">5</div></div>
<div class="one div9"><div class="title">6</div></div>
<div class="one div9"><div class="title">7</div></div>
<div class="one div9"><div class="title">8</div></div>
<div class="one div9"><div class="title">9</div></div>
<div class="one div9"><div class="title">10</div></div>
</div>
js代码:
$(".div9").Tdrag({
scope:".boxList",
pos:true,
dragChange:true,
changeMode:"sort"
});
排序换位拖拽
在移动过程中每两个块相触碰时所添加的class
html代码:
<div class="boxList">
<div class="one div10"><div class="title">1</div></div>
<div class="one div10"><div class="title">2</div></div>
<div class="one div10"><div class="title">3</div></div>
<div class="one div10"><div class="title">4</div></div>
<div class="one div10"><div class="title">5</div></div>
</div>
js代码:
$(".div10").Tdrag({
scope:".boxList",
pos:true,
dragChange:true,
changeMode:"sort",
moveClass:"abc"
});
随机变化位置
random属性属于加载时自动随机,randomInput属于给按钮加上事件,而我们也为随机数增加一种randomfn()方法,方便调用。
html代码:
<input class="plug_random" type="button" value="通过插件随机">
<input class="fn_random" type="button" value="通过函数随机">
<div class="boxList">
<div class="one div11"><div class="title">1</div></div>
<div class="one div11"><div class="title">2</div></div>
<div class="one div11"><div class="title">3</div></div>
<div class="one div11"><div class="title">4</div></div>
<div class="one div11"><div class="title">5</div></div>
<div class="one div11"><div class="title">6</div></div>
<div class="one div11"><div class="title">7</div></div>
<div class="one div11"><div class="title">8</div></div>
<div class="one div11"><div class="title">9</div></div>
<div class="one div11"><div class="title">10</div></div>
<div class="one div11"><div class="title">11</div></div>
<div class="one div11"><div class="title">12</div></div>
<div class="one div11"><div class="title">13</div></div>
<div class="one div11"><div class="title">14</div></div>
<div class="one div11"><div class="title">15</div></div>
</div>
js代码:
$(".div11").Tdrag({
scope:".boxList",
pos:true,
dragChange:true,
random:true,
randomInput:".plug_random"
});
$(".fn_random").on("click",function(){
$.randomfn(".div11")
})
变化位置时动画参数
duration是每次运动的总用时,easing是运动的方法:ease-out、ease-in、linear
html代码:
<div class="boxList">
<div class="one div12"><div class="title">1</div></div>
<div class="one div12"><div class="title">2</div></div>
<div class="one div12"><div class="title">3</div></div>
<div class="one div12"><div class="title">4</div></div>
<div class="one div12"><div class="title">5</div></div>
<div class="one div12"><div class="title">6</div></div>
<div class="one div12"><div class="title">7</div></div>
<div class="one div12"><div class="title">8</div></div>
<div class="one div12"><div class="title">9</div></div>
<div class="one div12"><div class="title">10</div></div>
</div>
js代码:
$(".div12").Tdrag({
scope:".boxList",
pos:true,
dragChange:true,
animation_options:{
duration:200,//每次动画的事件
easing:"ease-in"//动画特效 ease-out、ease-in、linear
}
});
禁止拖拽
disable属性属于加载时自动禁止拖拽,randomInput属于给按钮加上事件,点击时如果是禁止的,就是开启。反而如果时开启的,点击就是禁止而我们也为随机数增加两种disable方法,一个只能开启拖拽:disable_open(),一个只能禁止拖拽:disable_cloose(),方便调用。
html代码:
<input type="button" class="disable" value="插件按钮">
<input type="button" class="disable_open" value="函数开启拖拽">
<input type="button" class="disable_cloose" value="函数禁止拖拽">
<div class="boxList">
<div class="one div13"></div>
</div>
js代码:
$(".div13").Tdrag({
scope:".boxList",
disable:true,
disableInput:".disable"
});
//禁止
$(".disable_cloose").on("click",function(){
$.disable_cloose()
});
//开启
$(".disable_open").on("click",function(){
$.disable_open()
});
另附一份插件参数初始值
var call = {
scope: null,//父级
grid: null,//网格
axis:"all",//上下或者左右
pos:false,//是否记住位置
handle:null,//手柄
moveClass:"tezml",//移动时不换位加的class
dragChange:false,//是否开启拖拽换位
changeMode:"point",//point & sort
cbStart:function(){},//移动前的回调函数
cbMove:function(){},//移动中的回调函数
cbEnd:function(){},//移动结束时候的回调函数
random:false,//是否自动随机排序
randomInput:null,//点击随机排序的按钮
animation_options:{//运动时的参数
duration:800,//每次运动的时间
easing:"ease-out"//移动时的特效,ease-out、ease-in、linear
},
disable:false,//禁止拖拽
disableInput:null//禁止拖拽的按钮
};
Tdrag的更多相关文章
随机推荐
- myEclipse svn 插件安装
MyEclipse6.0 安装svn插件 博客分类: 技术 只说一种在线安装流程: 1. 打开Myeclipse,在菜单栏中选择Help→Software Updates→Find and Ins ...
- Unity UI大小动态设置(Resize Unity UI RectTransform)
我们在开发过程中发现,要调整Unity UI元素的大小,RectTransform提供了sizeDelta属性可以用来动态修改RectTransform的大小,但同时我们也google到另外一个修改R ...
- Oracle中给用户赋予debug权限
通过可视化工具(如PL/SQL Developer.Oracle SQL Developer)调试Oracle的存储过程时,如果遇到如下错误信息:...ORA-01031: insufficient ...
- PHP之Smarty模板引擎
前面的话 对PHP来说,有很多模板引擎可供选择,但Smarty是一个使用PHP编写出来的,是业界最著名.功能最强大的一种PHP模板引擎.Smarty像PHP一样拥有丰富的函数库,从统计字数到自动缩进. ...
- Ajax轮询——定时的通过Ajax查询服务端
概念:轮询(polling):客户端按规定时间定时向服务端发送ajax请求,服务器接到请求后马上返回响应信息并关闭连接. test.html //前端代码 <html> <h ...
- Delphi的保存文件对话框-TsaveDialog
TsaveDialog继承于TOpenDialog,只介绍以下几个内容: 1.TsaveDialog如何设定为保存的默认路径是当前程序所在的文件夹: 默认目录是当前程序所在目录应设置属性Initial ...
- java基础---->Base64算法的使用
Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,可用于在HTTP环境下传递较长的标识信息.详细的Base64信息,可以参见维基百科:https://en.wikipedia.org ...
- log4j和commons- logging(好文整理转载)
一 :为什么同时使用commons-logging和Log4j?为什么不仅使用其中之一? Commons-loggin的目的是为 “所有的Java日志实现”提供一个统一的接口,它自身的日志功能平常弱( ...
- nodejs 环境搭建
一 下载nodejs 官网:http://nodejs.cn/ 有时官网有点慢,可以去其他地方下载 统一下载站:http://www.3987.com/xiazai/2/43/57188.html 二 ...
- 精简的webservice
看了网上好多关于webservice的例子,基本上对初学者来说都是模棱两可云里雾里,现在,我将网上关于webservice的讲解提炼出来,通过一个最简单使用并且方便的例子,告诉大家什么是webserv ...