私は、JQueryのようなソート可能なリスト(link)を持つメソッドを探していますが、要素のいくつかは固定された避けられない位置にあります。いくつかの要素が順番に凍結されたJQueryのソート可能なリスト?
いくつかの要素を浮き彫りにするのは簡単ですが、上下のドラッグ可能な要素の数が変わる可能性があるため、その位置は固定されません。
具体的には: 私は10の項目のリストをランク付けしています。私は、ユーザがドラッグすることによってアイテムのいくつかのランクを変えることができるようにしたいが(la sortableリスト)、他のフリーズされた要素のランクは変更しない。標準のJQueryのソート可能なアンドラグ可能な機能では、フリーズされたアイテムのランクを、フリーズされたアイテムの上または下のエレメントの数を変更することによって変更できます。
ドラッグするときにリスト要素を「入れ替える」ことで、手動でこれを試してみました。すなわち、リストエレメントがフリーズされていないエレメントの上にドラッグされると、2つのエレメントの位置が入れ替えられます。これは私が望むセマンティクスを与えますが、ドラッグされているアイテムは、新しい位置と現在の「ドラッグ」位置の間で視覚的に「ジャンプ」します。 DOMの位置が変更されたときに、ドラッグオフセットの座標を再計算する必要があります。また、DOMの位置の変更を行う方法もわかりませんそして、ドラッグは、両者の間に再描画を防止し、アトミックな変化をオフセット座標。現在、時には再描画は、両者の間に発生し、要素が目に見えて、すぐにとはいえ、ジャンプします。)
編集 はここに私の手動アプローチを示すjsfiddleです: link。しばらくそれを試してみて、あなたは私が言及したちらつき/飛び出しに気付くでしょう。
ビヘイビアを 'beforeStop'イベントにバインドしようとしましたか? – graphicdivine
これはかなり興味深いと思います。あなたが持っているものでjsfiddleを作成することを検討してください! –
@ LinusGThiel、私は手動の試みを示すjsfiddleへのリンクを追加しました。 –