我正在使用jQuery构建座位应用程序。我的桌子周围有椅子,可能有客人坐在椅子上。每个表都有一个可拖动的包装div。桌子内是任意数量的椅子div。可以在任何椅子div内坐下一位客人。来宾也是嵌套在椅子div中的div。这是一个此类表的标记示例。这张桌子有8个宴会厅,前两位椅子上坐着两位客人。

<div id="table-wrapper-1" class="table-wrapper table-type-0 ui-draggable">
  <div id="table-1" class="seating-table">
    <div class="seating-table-name">Table 1</div>
  </div>
  <div id="chair-1-0" class="chair chair-pos-0 table-chair-1">
    <div title="Elaine Benis" id="guest-2-5-2" class="guest guest-2 ui-draggable"></div>
  </div>
  <div id="chair-1-1" class="chair chair-pos-1 table-chair-1">
    <div title="Elaine Benis" id="guest-2-5-2" class="guest guest-2 ui-draggable"></div>
  </div>
  <div id="chair-1-2" class="chair chair-pos-2 table-chair-1"></div>
  <div id="chair-1-3" class="chair chair-pos-3 table-chair-1"></div>
  <div id="chair-1-4" class="chair chair-pos-4 table-chair-1"></div>
  <div id="chair-1-5" class="chair chair-pos-5 table-chair-1"></div>
  <div id="chair-1-6" class="chair chair-pos-6 table-chair-1"></div>
  <div id="chair-1-7" class="chair chair-pos-7 table-chair-1"></div>
</div>


div.table-wrapper是可拖动的,div.guest的也是。这个想法是,您可以将一个客人从一个椅子拖到另一把椅子,或者将整个桌子拖到另一个位置。我遇到的问题是在IE中,如果您单击并拖动来宾,则来宾和表都同时拖动。有谁知道我该如何解决?

谢谢,
〜马特

最佳答案

经过大量的挖掘,我现在似乎已经找到了解决方案。它涉及到对ui.draggable.js的黑客攻击,但目前看来还没有其他方法。

要查看我的完整答案,请查看我在jQuery论坛上的帖子:

http://forum.jquery.com/topic/draggable-nested-inside-draggable-drags-both-when-dragging-child-in-ie

希望这对遇到类似问题的人有所帮助。

谢谢,
〜马特

09-25 16:50
查看更多