2011-10-11 101 views
6

我在jQuery UI排序順利操作時遇到了一些麻煩。jQuery UI可排序公差

我設置的容差並不總是正確的 - 例如,如果我將它設置爲'指針',有時候我可以讓對象幾乎位於另一個之上(包括鼠標),並且不會重新排序。有時候我必須微動物體才能重新排序。

有什麼需要正確工作或任何可能導致它打破? (?利潤,浮動,某些元素,絕對定位的元素等)

我的代碼基本上是這樣的(主播ABS的位置。):

<div span="span-12 prepend-top last"> 
    <ul id="fileupload-images" class="ui-sortable"> 
     <li class="image span-3" id="38b22e1c130d9c33fafb20e7ac16c038"> 
      <img class="thumb span-3 last" src="/uploads/3/8/b/38b22e1c130d9c33fafb20e7ac16c038/38b22e1c130d9c33fafb20e7ac16c038.jpg"> 
      <a href="#" class="zoom"></a> 
      <a href="#" class="remove"></a> 
     </li> 
    </ul> 
</div> 

回答

2

一個的jsfiddle將有很大的如果以下建議不適用於您,可排序的代碼。

1)使用tolerance pointerdo not use containment

$(".selector").sortable({ tolerance: "pointer" }); 

2)use a placeholder

$(".selector").sortable({ placeholder: "sortable-placeholder" }); 

「排序佔位符」 是你在你的樣式表定義一個類。確保佔位符與您嘗試移動的元素的寬度和高度相同。

3)force a placeholder size

$(".selector").sortable({ forcePlaceholderSize: true }); 

4)force a helper size

$(".selector").sortable({ forceHelperSize: true }); 

5)浮法留下您的li元素或右

2

我發現,這是這有助於在我的處境的唯一的事情:

helper: "clone" 
+0

這完全解決了我的問題!謝謝! –