jQuery EasyUI,Droppable(放置)组件
学习要点:
1.加载方式
2.属性列表
3.事件列表
4.方法列表
本节课重点了解 EasyUI 中 Droppable(放置)组件的使用方法,所谓放置,就将一个 物体入某一个物体内触发各种效果,这个组件不依赖于其他组件。
一.加载方式
//class 加载方式
<div id="dd"
class="easyui-droppable"
data-options="accept:'#box,#pox'"
style="background:black;width:600px;height:400px;">
</div>
droppable()将一个元素设置成放置元素,放置元素就是将另外指定的元素放置进来触发事件
//JS 加载调用
$('#box').droppable({
accept:'#box,#pox',
});
二.属性列表
accept selector 默认为 null,确定哪些元素被接受,值为要接收放置的元素id
/**
<div id="fzh">放置</div> <div id="box">
<div id="pox">内容部分</div>
</div>
**/ $(function () {
$('#box').draggable({ //将box元素设置拖拽 });
$('#fzh').droppable({ //将fzh元素设置成放置
accept:'#box,#pox' //确定哪些元素被接受,值为要接收放置的元素id
})
});
disabled boolean 默认为 false,如果为 true,则禁止放置
/**
<div id="fzh">放置</div> <div id="box">
<div id="pox">内容部分</div>
</div>
**/ $(function () {
$('#box').draggable({ //将box元素设置拖拽 });
$('#fzh').droppable({ //将fzh元素设置成放置
accept:'#box,#pox', //确定哪些元素被接受,值为要接收放置的元素id
disabled:true //如果为 true,则禁止放置
})
});
三.事件列表
注意:以下事件 e接收的事件event对象,source接收的放置进来的元素对象
onDragEnter e,source 在被拖拽元素到放置区内的时候触发,只触发一次
/**
<div id="fzh">放置</div> <div id="box">
<div id="pox">内容部分</div>
</div>
**/ $(function () {
$('#box').draggable({ //将box元素设置拖拽 });
$('#fzh').droppable({ //将fzh元素设置成放置
accept: '#box,#pox', //确定哪些元素被接受,值为要接收放置的元素id
onDragEnter: function (e, source) { //在被拖拽元素到放置区内的时候触发,只触发一次
$(this).css('background', 'blue');
}
})
});
onDragOver e,source 在被拖拽元素经过放置区的时候触发
/**
<div id="fzh">放置</div> <div id="box">
<div id="pox">内容部分</div>
</div>
**/ $(function () {
$('#box').draggable({ //将box元素设置拖拽 });
$('#fzh').droppable({ //将fzh元素设置成放置
accept: '#box,#pox', //确定哪些元素被接受,值为要接收放置的元素id
onDragEnter: function (e, source) { //在被拖拽元素经过放置区的时候触发,触发多次
$(this).css('background', 'blue');
}
})
});
onDragLeave e,source 在被拖拽元素离开放置区的时候触发
/**
<div id="fzh">放置</div> <div id="box">
<div id="pox">内容部分</div>
</div>
**/ $(function () {
$('#box').draggable({ //将box元素设置拖拽 });
$('#fzh').droppable({ //将fzh元素设置成放置
accept: '#box,#pox', //确定哪些元素被接受,值为要接收放置的元素id
onDragLeave: function (e, source) { //在被拖拽元素离开放置区的时候触发,
$(this).css('background', 'blue');
}
})
});
onDrop e,source 在被拖拽元素放入到放置区的时候触发,也就是放下鼠标左键弹起时触发
/**
<div id="fzh">放置</div> <div id="box">
<div id="pox">内容部分</div>
</div>
**/ $(function () {
$('#box').draggable({ //将box元素设置拖拽 });
$('#fzh').droppable({ //将fzh元素设置成放置
accept: '#box,#pox', //确定哪些元素被接受,值为要接收放置的元素id
onDrop: function (e, source) { //在被拖拽元素放入到放置区的时候触发,也就是放下鼠标左键弹起时触发
$(this).css('background', 'blue');
}
})
});
四.方法列表
options none 返回属性对象
/**
<div id="fzh">放置</div> <div id="box">
<div id="pox">内容部分</div>
</div>
**/ $(function () {
$('#box').draggable({ //将box元素设置拖拽 });
$('#fzh').droppable({ //将fzh元素设置成放置
accept: '#box,#pox', //确定哪些元素被接受,值为要接收放置的元素id
onDrop: function (e, source) { //在被拖拽元素放入到放置区的时候触发,也就是放下鼠标左键弹起时触发
$(this).css('background', 'blue');
}
});
var p = $('#fzh').droppable('options'); //options none 返回属性对象
$.each(p, function (attr, value) { //遍历属性对象
alert(attr + ':' + value);
});
});
enable none 启用放置功能
/**
<div id="fzh">放置</div> <div id="box">
<div id="pox">内容部分</div>
</div>
**/ $(function () {
$('#box').draggable({ //将box元素设置拖拽 });
$('#fzh').droppable({ //将fzh元素设置成放置
accept: '#box,#pox', //确定哪些元素被接受,值为要接收放置的元素id
onDrop: function (e, source) { //在被拖拽元素放入到放置区的时候触发,也就是放下鼠标左键弹起时触发
$(this).css('background', 'blue');
}
});
$('#fzh').droppable('disable'); //disable none
$('#fzh').droppable('enable'); //enable none 启用放置功能
});
disable none 禁用放置功能
/**
<div id="fzh">放置</div> <div id="box">
<div id="pox">内容部分</div>
</div>
**/ $(function () {
$('#box').draggable({ //将box元素设置拖拽 });
$('#fzh').droppable({ //将fzh元素设置成放置
accept: '#box,#pox', //确定哪些元素被接受,值为要接收放置的元素id
onDrop: function (e, source) { //在被拖拽元素放入到放置区的时候触发,也就是放下鼠标左键弹起时触发
$(this).css('background', 'blue');
}
});
$('#fzh').droppable('disable'); //disable none 禁用放置功能
});
$.fn.droppable.defaults 重写默认值对象。
$.fn.droppable.defaults.disabled = true;