以下のコードは、開始イベントのソート可能を完全に無効にするわけではありません。並べ替え可能な要素にはui-sortable-disabled
とui-state-disabled
というクラスが追加されますが、機能が無効になるわけではありません。つまり、ソート可能な表示は無効ですが、引き続きドラッグされた項目を受け入れ、有効になっているように動作します。jQueryは開始イベントからソート可能( 'disable')、完全には期待どおりに動作しません。
var assignedSortables;
var startDrag = function(event, ui) {
assignedSortables.each(function() {$(this).sortable('disable');});
};
var stopDrag = function(event, ui) {
assignedSortables.each(function() {$(this).sortable('enable');});
};
assignedSortables = $(".my-sortable-containers").sortable({
connectWith: '.my-sortable-containers',
start: startDrag,
stop: stopDrag
});
私はこれをしたい理由は、ドラッグ開始である私はすでに(私は簡単にするためのロジックを取り除か)項目がドラッグされている含まれている他の接続sortablesを無効にする必要がある可能性があるためです。これはバグですか、それとも回避方法がありますか?
こんにちは!私は、オーバーイベントで。プレースホルダーを隠して遊んでいただけですが、視覚的なハックですが、まだアイテムなどを取り除く必要があります。私はあなたの答えを試しましたが、うまく動作しませんでしたか?私のフィドルを見てください:http://jsfiddle.net/tunafish/m32XW/1/私は何が欠けていますか?この例では、アイテムを左からドラッグするときに正しいリストを無効にしたいだけです。 – FFish
今すぐ入手!私はアイテムではなく、リスト上でマウスイベントを行っていました。参照してください:http://jsfiddle.net/tunafish/m32XW/3/今、私はクレイジーハックを得ることができます:-) *バウンティ*歓声 – FFish
素晴らしい、素敵な仕事 – JeremyWeir