bry*_*yan 5 jquery jquery-ui droppable draggable
我有一个jQuery UI可拖动和几个单独定义的droppables.由于配置了其中一个droppable tolerance: 'intersect',因此可以同时将多个dropppable拖放到drappable上.
什么是防止意外掉落射击的最佳方法?基本上,我想优先考虑droppables,以便在tolerance: 'intersect'触发另一个droppable时不会触发droppables.
更新 - 更多信息澄清事情:
tolerance: 'pointer'除了一类droppable之外,所有的droppable都被配置tolerance: 'intersect'.
一类droppable的原因tolerance: 'intersect'是droppables真的很窄,用户在找到它们时遇到了问题tolerance: 'pointer'.
将落差器进一步拆开不是一种选择.
没有任何droppable重叠,但draggable足够大,可以与droppable重叠,tolerance: 'intersect'而鼠标指针在另一个droppable上tolerance: 'pointer'.通过这种方式,最多可以同时触发两个可放置的放置点.
UI被布局,因此tolerance: 'intersect'如果已经触发了另一个可放置,则可以通过忽略可放置来确定用户的意图; 即,如果用户将鼠标指针移到了一个可放置的上面,可以tolerance: 'pointer'安全地假设他/她打算将它放在那里.问题是,我无法弄清楚如何忽略不需要的droppable.
在over:,将类分配给预期的droppable并从所有其他droppable中删除该类:
$(".dragArea").not($(this)).removeClass("dragHover");
$(this).addClass("dragHover");
Run Code Online (Sandbox Code Playgroud)
然后drop:,检查是否设置了类:
if(!$(this).is('.dragHover')){
return false;
}
Run Code Online (Sandbox Code Playgroud)
这样,只触发一个droppable.
| 归档时间: |
|
| 查看次数: |
2896 次 |
| 最近记录: |