拖放行为

的头像
186

effectAllowed 用于控制被拖动元素的拖动行为,因此通常建议在ondragstart 事件监听器中设置 DataTransfer 对象的effectAllowed 属性;而dropEffect 则控制被 “放”入的目标组件的行为,因此通常建议在ondragover 事件监听器中设置 DataTransfer 对象的 dropEffect 属性。
如果 dropEffect 设置的拖放行为不在effectAllowed 属性设置的多个拖放行为之内,拖放操作将会失败。具体来说,需要注意如下 4点。
如果 effectAllowed 设为none,则不允许拖动该元素。
如果 dropEffect 设置为none,则被拖动的元素不能“放”到本元素中。
如果 effectAllowed 设置为 all 或不设置,则 dropEffect 可设置为任何属性值(因为都在 all 范围之内),而且将会遵守 dropEffect 指定的拖放行为。
如果 effectAllowed 指定了特定的拖放行为,例如move、copy 等,那么 dropEffect指定的属性值必须是 effectAllowed 指定的多个属性值的子集。

 

通过调用DataTransfer对象的setDraglmage还可以改变拖放图标。

用户评论
评论列表