Draggable(拖動)即實現(xiàn)頁面元素的拖動效果。
創(chuàng)新互聯(lián)公司專注于龍子湖網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供龍子湖營銷型網(wǎng)站建設(shè),龍子湖網(wǎng)站制作、龍子湖網(wǎng)頁設(shè)計、龍子湖網(wǎng)站官網(wǎng)定制、小程序定制開發(fā)服務(wù),打造龍子湖網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供龍子湖網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
一、加載方式
1.css樣式加載:
<div id="box" class="easyui-draggable" > 內(nèi)容部分 </div>
使用css樣式加載Draggable,方便快捷,但是不利于管理,所以我們有課第二種加載方式,使用Jquery方式加載,一般我們都會使用Jquery的方式進(jìn)行加載。
2.Jquery方式加載:
//不加屬性 $('#box').draggable(); //JS部分 $('#box').draggable({ revert : true, //拖動后是否回到起始位置,boolean類型 cursor : 'text', //鼠標(biāo)拖拽樣式,十字,文本等 handle : '#pox', //句柄,設(shè)置后只在設(shè)置后只能在當(dāng)前元素下實現(xiàn)拖拽 disabled : false, //設(shè)置是否可以被拖拽 edge : 50, //設(shè)置邊界往內(nèi)多大距離可以實現(xiàn)拖拽 axis : 'v', //設(shè)置拖拽方向,v:垂直拖拽,h:水平拖拽 proxy: 'clone', //設(shè)置代理元素,使用clone時為復(fù)制當(dāng)前元素 deltaX : 10, //被拖拽元素左上角距離當(dāng)前光標(biāo)的X軸方向的距離 deltaY : 10, //被拖拽元素左上角距離當(dāng)前光標(biāo)的Y軸方向的距離 proxy: function(source){ //自定義代理元素 var p = $('<div style="border:1px solid #ccc;width:400px;height:200px;"></div>'); p.html($(source).html()).appendTo('body'); return p; }, }); //HTML部分 <div id="box" > 內(nèi)容部分 </div>
二、事件
1.onBeforeDrag 拖動前發(fā)生
$('#box').draggable({ onBeforeDrag : function (e) { alert('拖動之前觸發(fā)!'); //return false; } });
在拖動前發(fā)生,既當(dāng)鼠標(biāo)點擊元素時發(fā)生,當(dāng)返回false時將無法拖拽,我們不會讓它直接返回false,因為這樣沒有任何意義,在使用時應(yīng)該有充足的邏輯判斷。
2.onStartDrag 拖動開始時發(fā)生
$('#box').draggable({ onStartDrag : function (e) { alert('拖動開始時觸發(fā)!'); //return false; } });
在鼠標(biāo)點擊后拖動的一瞬間執(zhí)行,執(zhí)行時間在onBeforeDrag之后。
3.onDrag拖拽過程中執(zhí)行
$('#box').draggable({ onDrag : function (e) { alert('拖動過程中觸發(fā)!'); } });
在拖動的過程中執(zhí)行,當(dāng)鼠標(biāo)一移動就會執(zhí)行,當(dāng)不能拖動時返回false
4.onStopDrag 拖動停止后發(fā)生
$('#box').draggable({ onStopDrag : function (e) { alert('在拖動停止時觸發(fā)!'); } });
在拖動結(jié)束后觸發(fā),即松開鼠標(biāo)時執(zhí)行,無返回值。
5.以上事件可組合使用,執(zhí)行順序為onBeforeDrag --> onBeforeDrag --> onDrag --> onStopDrag
$('#box').draggable({ onBeforeDrag : function (e) { alert('拖動之前觸發(fā)!'); //return false; }, onStartDrag : function (e) { alert('拖動時觸發(fā)!'); }, onDrag : function (e) { alert('拖動過程中觸發(fā)!'); }, onStopDrag : function (e) { alert('在拖動停止時觸發(fā)!'); },});
三、方法
方法名 | 說明 |
option | 返回屬性對象 |
proxy | 如果代理屬性被設(shè)置則返回該拖動代理元素 |
enabl | 允許拖 |
disable | 禁止拖動 |
//返回屬性對象 console.log($('#box').draggable('options')); //返回代理元素 onStartDrag : function (e) { console.log($('#box').draggable('proxy')); }, //禁止拖動 $('#box').draggable('disable'); //允許拖放 $('#box').draggable('enable');
四、設(shè)置默認(rèn)屬性
在一次設(shè)置后當(dāng)前頁面所有拖拽都會共享這個屬性,不用再去設(shè)置。
$(function(){ $.fn.draggable.defaults.cursor = 'text'; });
本文名稱:Draggable(拖動)組件屬性、事件、方法
當(dāng)前網(wǎng)址:http://jinyejixie.com/article46/ppjoeg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、品牌網(wǎng)站建設(shè)、面包屑導(dǎo)航、網(wǎng)站策劃、App設(shè)計、網(wǎng)站維護(hù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)