2012-04-24 15 views
2

jqueryのソート可能な実装を使用しているときに要素が「ボックスサイズ:border-box」を持つ場合、ドラッグするとそのサイズが失われ/変更されます。jQueryボックスサイズでソート可能:border-box

例 - http://jsfiddle.net/veBJh/2/

削除した場合

ボックスサイズ:ボーダー・ボックスには、オリジナルの要素の寸法を維持する、期待通りに動作します属性。これを回避する方法はありますか(ボックスサイジングの属性を変更することなく、プロジェクトのグローバル設定ですが、他のものはそれほど簡単になりますので削除しないでください)。

答えて

4

私は同じ問題に遭遇し、ソート可能な呼び出しにカスタム「ヘルパー」を追加して、それを解決:

$('#container').sortable({ 
    helper: function(event, element) { 
     var clone = $(element).clone(); 
     var w = $(element).outerWidth(); 
     var h = $(element).outerHeight(); 
     clone.css({ 
      'width': w+'px', 
      'height': h+'px' 
     }); 
     return clone; 
    } 
}); 
2

私はドラッグ可能な項目にbox-sizing: content-box;を追加する解決