这个demo展示的效果为:从上面可以拖动到下面相应的框中(原有的不能再拖动),拖动框中的东西到外面可以取消
-----------以下为HTML
【有关easyUI的拖动操作中droppable,draggable用法例子】
- 锐客网
- 品类
- 工厂
- 跟高
- 跟型
- 单价
级联统计指标
列指标
-------------以下为js代码
var tab = []; $('.items li').draggable({ proxy: 'clone', revert: true }); // 级联统计指标放置区 $('.target-cascade').droppable({ onDragEnter: function(e,source){ $(this).css('border','1px solid red'); }, onDragLeave: function(e,source){ $(this).css('border','1px solid black'); }, onDrop: function(e,source){ // 判断拖动的元素是否存在于放置区内 if($(source).draggable('options').proxy === 'clone'){ // 禁用拖动 NotDrag(source); // 将拖入元素的原位置记录下来 var buttonName = $(source).find('span').html(); console.log("--------"+$(source).index()); tab[buttonName] = $(source).index(); //返回指定元素相对于其他元素的位置(0,1等),如果没有找到,则返回-1 var Ele = $(''); Ele.appendTo('.target-cascade ul'); } $(this).css('border','1px solid black'); // 拖动放置区内的元素 $(this).find('button').draggable({ revert: true, onStopDrag: function(e){ var _index = tab[$(this).html()]; $(this).parent().remove(); $('.items li:eq('+_index+')').draggable('enable'); $('.items li:eq('+_index+')').find('i').css('backgroundColor','red'); } }); } }); // 列指标放置区 $('.target-column').droppable({ onDragEnter: function(e,source){ $(this).css('border','1px solid red'); }, onDragLeave: function(e,source){ $(this).css('border','1px solid black'); }, onDrop: function(e,source){ // 判断拖动的元素是否存在于放置区内 if($(source).draggable('options').proxy === 'clone'){ // 禁用拖动 NotDrag(source); var buttonName = $(source).find('span').html(); tab[buttonName] = $(source).index(); var Ele = $(''+ ' '); Ele.appendTo('.target-column ul'); } $(this).css('border','1px solid black'); // 拖动放置区内的元素 $(this).find('button').draggable({ revert: true, onDrag: function(e){ $(e.data.parent).find('select').hide(); }, onStopDrag: function(e){ var _index = tab[$(this).html()]; $(this).parent().remove(); $('.items li:eq('+_index+')').draggable('enable'); $('.items li:eq('+_index+')').find('i').css('backgroundColor','red'); $(e.target).siblings('select').show(); } }); } }); //禁止拖动 function NotDrag(source){ $(source).draggable('disable'); //禁用拖动动作 $(source).find('i').css('backgroundColor','grey'); }
推荐阅读
- JavaScript|web前端入门到实战(好用的Js图表库)
- 接口访问加密方式
- 实用技术|Chrome 技术篇-常用web调试手法(清除缓存并硬性重新加载)
- web前端|CSS科技感四角边框
- ColorBox 演示和说明/API
- SUI 列表 底部无限滚动
- js把时间戳转化为时间
- js jq获取标签的各种方式整理
- WEB前端|用HTML5canvas绘制一个圆环形的进度表示