※ 引述《sin282 (@兴...)》之铭言:
: 场景上有 A & B两个区块
: A: 五个 30px * 30px 的小icon(做为drag用)
: icon元素内容 DIV 包住一个IMG
: B: 一个Div包住5个Div(5列,高度都是100px),可以把icon 拖进去(复制)
: 拥有相同的Class做为sortable触发区域
: 问题出现了,使用参考网站的语法可以顺利不断复制icon到B Div中,触发区域可能重叠
: 导致icon同时复制了两个到不同的Div中.
: 想请问在上述功能中,有没有办法限制drag物件同时只能作用在一个DIV中..感恩
: 以下尝试无效
: 1、sortable的语法都试过了...
: 2、Div也有试着用空白上下Div分开(机率降低,还是有机会触发)
我以前做YUI sortable也有遇到类似问题 不过我没解掉XD
也不是很常发生 偶尔会有
1.drop到错误位置
2.drag div额外复制
究其原因 就是sortable div弄得太复杂了
你的div内有个img元素
我的div内有很多form元素 常常会drag进input里
然后input好像就不会bubble up触发ondrop
我这个问题与解法,jquery可以设cancel:
http://stackoverflow.com/questions/21816262/
how-do-i-drag-a-div-if-someone-clicks-on-a-input-within-the-draggable-div
缩:http://tinyurl.com/qb5py8g
如果sortable很单纯 像范例那样只有ul li 那世界很美好
或是如你所说把sortable拿掉 也就没bug了
我猜想你可能有拖到img 或是将div拖进img
所以也许可以试试看去侦测
img.ondrop = function(e) {
e.preventDefault();
//next, do the drag yourself
}
Good luck!