jQuery UI:Safari中的Droppable('drop'事件,容忍:触摸)错误(mac)

时间:2012-04-11 11:10:00

标签: jquery jquery-ui safari drag-and-drop jquery-ui-droppable

我无法解决以下问题:

  

以下代码适用于 mac 的所有浏览器以及Windows,除了它   部分适用于macs safari(5.1.5)

     

注意:适用于Windows Safari(5.1.5)。

这是基本结构

enter image description here

$(".div2" ).droppable({
        accept: '.div1',
        tolerance: 'touch',
        drop: function(){ 
                        alert('dropped');
        }   
});

因此,基本上当 div1 触及 div2 时,应触发drop事件。

enter image description here

但上述情况不会触发掉线事件。

在macs safari中触发drop事件的唯一情况(如下所示)是可拖动div div1 完全通过droppable div div2 。我只是不知道为什么?

enter image description here

  

使用的版本:

jQuery: 1.7.2
jQuery UI: 1.8.18
Safari(mac): 5.1.5
     

更新

     

我尝试了其他容忍选择。 '触摸'和'相交'都可以   不按预期工作。但是'指针'的效果非常好。

     

有没有其他方法可以实现'公差:触摸'的功能?我正在考虑检测2个div之间的碰撞,然后应用相应的逻辑。

任何帮助将不胜感激。

谢谢!

1 个答案:

答案 0 :(得分:0)

尝试将position: absolute !important;添加到元素中。这是我发现这个问题的解决方案。否则,您可以尝试为draggable / droppable div创建父div。