放置 Droppable

示例

基本形式

<draggable value="success"><div class="u-color u-color-success">拖我</div></draggable>
<draggable value="warning"><div class="u-color u-color-warning">拖我</div></draggable>
<draggable value="error"><div class="u-color u-color-error">拖我</div></draggable>
<p></p>
<droppable value={dropData}><div class="u-color u-color-{dropData || 'primary'}">放到这里</div></droppable>

事件

请打开浏览器的控制台查看结果。

<draggable value="success"
    on-dragstart={console.log('on-dragstart:', '$event:', $event)}
    on-dragend={console.log('on-dragend:', '$event:', $event)}>
    <div class="u-color u-color-success">拖我</div>
</draggable>
<droppable value={dropData}
    on-dragenter={console.log('on-dragenter:', '$event:', $event)}
    on-dragleave={console.log('on-dragleave:', '$event:', $event)}
    on-drop={console.log('on-drop:', '$event:', $event)}>
    <div class="u-color u-color-{dropData || 'primary'}">放到这里</div>
</droppable>

API

Class

Droppable

继承自

Options

new Droppable()

参数类型默认值数据流向描述
dataObject绑定属性
data.valuevaroutside <= inside拖放后传递过来的值
data.disabledbooleanfalseoutside => inside是否禁用
data.classstring'z-droppable'outside => inside可放置时(即disabled=false)给元素附加此class
data.dragTargetstring'z-dragTarget'outside => inside拖拽在该元素上方时给该元素附加此class

Events

droppable.$on('dragenter')

拖拽进入该元素时触发

属性类型描述
senderobject事件发送对象,为当前droppable
originobject拖拽源,为拖拽的draggable
sourceobject拖拽起始元素
proxyobject拖拽代理元素
targetobject拖拽目标元素
valueobject拖拽时接收到的值
screenXnumber鼠标指针相对于屏幕的水平位置
screenYnumber鼠标指针相对于屏幕的垂直位置
clientXnumber鼠标指针相对于浏览器的水平位置
clientYnumber鼠标指针相对于浏览器的垂直位置
pageXnumber鼠标指针相对于页面的水平位置
pageYnumber鼠标指针相对于页面的垂直位置
startXnumber拖拽开始时鼠标指针的水平坐标
startYnumber拖拽开始时鼠标指针的垂直坐标
dragXnumber拖拽时鼠标指针相对于起始坐标的水平位移
dragYnumber拖拽时鼠标指针相对于起始坐标的垂直位移
startLeftnumber拖拽开始时代理元素的left值
startTopnumber拖拽开始时代理元素的top值
leftnumber拖拽时代理元素的left值
topnumber拖拽时代理元素的top值
cancelfunction取消拖拽操作

droppable.$on('dragleave')

拖拽离开该元素时触发

属性类型描述
senderobject事件发送对象,为当前droppable
originobject拖拽源,为拖拽的draggable
sourceobject拖拽起始元素
proxyobject拖拽代理元素
targetobject拖拽目标元素
valueobject拖拽时接收到的值
screenXnumber鼠标指针相对于屏幕的水平位置
screenYnumber鼠标指针相对于屏幕的垂直位置
clientXnumber鼠标指针相对于浏览器的水平位置
clientYnumber鼠标指针相对于浏览器的垂直位置
pageXnumber鼠标指针相对于页面的水平位置
pageYnumber鼠标指针相对于页面的垂直位置
startXnumber拖拽开始时鼠标指针的水平坐标
startYnumber拖拽开始时鼠标指针的垂直坐标
dragXnumber拖拽时鼠标指针相对于起始坐标的水平位移
dragYnumber拖拽时鼠标指针相对于起始坐标的垂直位移
startLeftnumber拖拽开始时代理元素的left值
startTopnumber拖拽开始时代理元素的top值
leftnumber拖拽时代理元素的left值
topnumber拖拽时代理元素的top值
cancelfunction取消拖拽操作

droppable.$on('dragover')

拖拽在该元素上方时触发

属性类型描述
senderobject事件发送对象,为当前droppable
originobject拖拽源,为拖拽的draggable
sourceobject拖拽起始元素
proxyobject拖拽代理元素
targetobject拖拽目标元素
valueobject拖拽时接收到的值
ratioXnumber鼠标指针相对于接收元素所占的长度比
ratioYnumber鼠标指针相对于接收元素所占的高度比
screenXnumber鼠标指针相对于屏幕的水平位置
screenYnumber鼠标指针相对于屏幕的垂直位置
clientXnumber鼠标指针相对于浏览器的水平位置
clientYnumber鼠标指针相对于浏览器的垂直位置
pageXnumber鼠标指针相对于页面的水平位置
pageYnumber鼠标指针相对于页面的垂直位置
startXnumber拖拽开始时鼠标指针的水平坐标
startYnumber拖拽开始时鼠标指针的垂直坐标
dragXnumber拖拽时鼠标指针相对于起始坐标的水平位移
dragYnumber拖拽时鼠标指针相对于起始坐标的垂直位移
startLeftnumber拖拽开始时代理元素的left值
startTopnumber拖拽开始时代理元素的top值
leftnumber拖拽时代理元素的left值
topnumber拖拽时代理元素的top值
cancelfunction取消拖拽操作

droppable.$on('drop')

拖拽放置时触发

属性类型描述
senderobject事件发送对象,为当前droppable
originobject拖拽源,为拖拽的draggable
sourceobject拖拽起始元素
proxyobject拖拽代理元素
targetobject拖拽目标元素
valueobject拖拽时接收到的值
ratioXnumber鼠标指针相对于接收元素所占的长度比
ratioYnumber鼠标指针相对于接收元素所占的高度比
screenXnumber鼠标指针相对于屏幕的水平位置
screenYnumber鼠标指针相对于屏幕的垂直位置
clientXnumber鼠标指针相对于浏览器的水平位置
clientYnumber鼠标指针相对于浏览器的垂直位置
pageXnumber鼠标指针相对于页面的水平位置
pageYnumber鼠标指针相对于页面的垂直位置
startXnumber拖拽开始时鼠标指针的水平坐标
startYnumber拖拽开始时鼠标指针的垂直坐标
dragXnumber拖拽时鼠标指针相对于起始坐标的水平位移
dragYnumber拖拽时鼠标指针相对于起始坐标的垂直位移
startLeftnumber拖拽开始时代理元素的left值
startTopnumber拖拽开始时代理元素的top值
leftnumber拖拽时代理元素的left值
topnumber拖拽时代理元素的top值