easyui Draggable組件實(shí)現(xiàn)拖動(dòng)效果
easyui做為一個(gè)封裝了JQusey的UI插件,其實(shí)還是蠻好用的,至少省了像我這種渣渣很多時(shí)間。
Draggable的加載方式有兩種:
1,通過(guò)class加載,如下:
<div id="box" class="easyui-draggable"></div>
通過(guò)JS加載,如下:
$('#box').draggable();
以上兩點(diǎn)需要注意的是不管是'easyui-draggable',還是draggable 都是固定的,他們都是通過(guò)調(diào)用easyui已經(jīng)寫(xiě)好的函數(shù),來(lái)實(shí)現(xiàn)jQuery效果的。
Draggable的屬性:
revert 當(dāng)值為true時(shí),拖動(dòng)停止時(shí)返回起始位置,可以到處拖。
revert : boolean,
axis 限制拖動(dòng)的方向,水平'h'?垂直'v'?這個(gè)和 revert組合起來(lái)比較有意思,設(shè)置拖動(dòng)方向?yàn)?/p>
垂直的話就跟微信,微博刷新消息一樣。
axis : String/'v'/'h',
proxy 克隆,就是拖動(dòng)的時(shí)候要拖動(dòng)的對(duì)象不變,然后在鼠標(biāo)上復(fù)制一個(gè)要拖動(dòng)的對(duì)象,當(dāng)然也
可以是其他的,可以觸發(fā)function。
proxy : null/String/function,
然后還有很多其他的屬性,覺(jué)得并不是特別有趣。
cursor : move/String , //指定拖動(dòng)時(shí)候指針的CSS樣式 變得美美噠
deltaX : null/number,
deltaY : null/number, //被拖動(dòng)的元素對(duì)應(yīng)于當(dāng)前光標(biāo)位置的x,y 就是給被 拖動(dòng)元素與光標(biāo)一個(gè)距離
handle : null/selector //開(kāi)始拖動(dòng)的句柄 手柄!只能用手柄拖動(dòng)!對(duì)的!
disabled : boolean //設(shè)置為true是,不能拖動(dòng)當(dāng)先綁定的元素
edge : number //可以在其中拖動(dòng)的容器的寬度 從容器的上下左右往里算 ,就像一個(gè)矩形里面包著一個(gè)矩形 ,然后里面那只有鼠標(biāo)放在里面矩形的時(shí)候元素才能被拖動(dòng)
例子:
$('#box').draggable({ revert : true, cursor: 'text', handle : '#pox', disabled : false, edge : 50, axis :'v', proxy : 'clone', deltaX: 10, deltaY : 10, proxy: function(source){ console.log('呵呵噠!'); } });
Draggable的事件:
onBeforeDrag 拖動(dòng)之前觸發(fā),返回false將取消拖動(dòng)
onBeforeDrag : function (e){ alert('拖動(dòng)之前觸發(fā)'); return false; }
onStartDrag 拖動(dòng)時(shí)觸發(fā)
onStartDrag : function(e){ alert('拖動(dòng)時(shí)觸發(fā)'); }
onDrag 拖動(dòng)過(guò)程中觸發(fā),不能拖動(dòng)事返回false
onDrag : function(e){ alert('拖動(dòng)過(guò)程觸發(fā)'); }
onDrag 停止拖動(dòng)時(shí)觸發(fā)
onStopDrag : function (e){ alert('在拖動(dòng)停止時(shí)觸發(fā)'); }
Draggable 方法列表
options 返回屬性對(duì)象
console.log($('#box').draggable('options'));
proxy 如果代理屬性被設(shè)置則返回該拖動(dòng)代理元素
console.log($('#box').draggable('proxy'));
enable 可以被拖動(dòng)
$('#box').draggable('enable');
disable 禁止被拖動(dòng)
$('#box').draggable('disable');
我們來(lái)看個(gè)簡(jiǎn)單的例子
<pre class="brush:java;">html> <meta charset="UTF-8"> <title>Basic Draggable - jQuery EasyUI Demo</title> <link rel="stylesheet" type="text/css" href="jquery-easyui-1.3.6/themes/metro/easyui.css"> <link rel="stylesheet" type="text/css" href="jquery-easyui-1.3.6/themes/icon.css"> <link rel="stylesheet" type="text/css" href="jquery-easyui-1.3.6/demo/demo.css"> <script type="text/javascript" src="jquery-easyui-1.3.6/jquery.min.js"></script> <script type="text/javascript" src="jquery-easyui-1.3.6/jquery.easyui.min.js"></script> <h2>Basic Draggable</h2> <p>Move the boxes below by clicking on it with mouse.</p> <div id="dd" class="easyui-draggable" data-options="handle:'#title'" style="width:100px;height:100px;"> <div id="title" style="background:#ccc;width:100px;height:100px;">容器里面的內(nèi)容</div> </div> <script> $(function () { $("#title").draggable({ proxy: function (a) { var a = $('<div class="proxy_div">你拖我干啥</div>'); a.appendTo('body'); return a; }, cursor: 'pointer', edge: '6' }); }); </script> </pre><br><br>
以上差不多就是Easyui 1.2.5 Draggable的全部屬性,事件、方法和示例了, 如果有什么不對(duì)的話,歡迎評(píng)論,一起討論和賜教。
相關(guān)文章
使用jQuery+EasyUI實(shí)現(xiàn)CheckBoxTree的級(jí)聯(lián)選中特效
這篇文章主要介紹了使用jQuery+EasyUI實(shí)現(xiàn)CheckBoxTree的級(jí)聯(lián)選中特效的相關(guān)資料,需要的朋友可以參考下2015-12-12jquery異步循環(huán)獲取功能實(shí)現(xiàn)代碼
頁(yè)面html的repeater控件中有一個(gè)span,需要根據(jù)指定ID異步獲取相關(guān)信息。2010-09-09Ext.get() 和 Ext.query()組合使用實(shí)現(xiàn)最靈活的取元素方式
想要利用ExtJS的庫(kù)函數(shù)對(duì)DOM進(jìn)行各類(lèi)操作,就要得到Element類(lèi)型的對(duì)象,但是Ext.get()取到的雖然是Element,但是參數(shù)只能是id,如果大家對(duì)jQuery的selector方式很喜歡和崇拜,那么就一定要學(xué)習(xí)Ext.get()和Ext.query()的組合方式。2011-09-09jQuery實(shí)現(xiàn)二級(jí)下拉菜單效果
這篇文章主要介紹了jQuery實(shí)現(xiàn)二級(jí)下拉菜單效果的相關(guān)資料,需要的朋友可以參考下2016-01-01在jQuery ajax中按鈕button和submit的區(qū)別分析
昨天在使用jQuery ajax的post方法進(jìn)行頁(yè)面?zhèn)髦?,無(wú)刷新獲取數(shù)據(jù)展示,弄了半天就是沒(méi)有效果,看了半天也沒(méi)有語(yǔ)法錯(cuò)誤,最后才終于明白問(wèn)題出在哪里2012-10-10jquery ui resize 中border-box的bug修正
本文給大家分享的是jQuery ui resize中的一個(gè)樣式的小bug的解決方法,官方并沒(méi)有修復(fù),這里推薦給大家,有需要的小伙伴可以參考下。2015-04-04