3

ドラッグ可能で並べ替え可能なリストを使用して、項目をドラッグしてそれらの間で並べ替えています。ただし、私が持っているアイテムはスライド可能です (つまり、それらをクリックするとコンテンツが表示/非表示になります)。項目をあるリストから別のリストにドラッグすると、スライド効果が失われます。また、子ノードが非表示になっているアイテムがあり、そのアイテムを別のリストにドラッグすると、そのアイテムのみ (子コンテンツなし) がドラッグされます。ここにコードがあります

http://jsbin.com/ujivav/1/edit

4

3 に答える 3

3

KHYは正しいですが、次のように、代わりclickに使用するようにイベントを変更することもできます。on

$('body').on('click', '.clicktohide',function(){
    $(this).siblings().slideToggle('fast');
});

これが例ですhttp://jsbin.com/ujivav/4/edit

于 2012-11-20T15:29:56.393 に答える
2

最初のページが読み込まれると、「クリック」イベントとのバインディングが行われるためだと思います。あなたの例では、ドラッグされた後、「.clicktohide」クラスの要素が複製され、複製された要素は「クリック」イベントがバインドされた選択範囲内にありませんでした。

「停止」イベントがトリガーされたときに呼び出されるコールバック関数を実装して、ドラッグされた要素にこのイベントをバインドする必要があると思います。

于 2012-11-20T15:27:24.070 に答える
0

「クローン」がイベント ハンドラーを再作成するようには見えず、DOM 要素だけが再作成されます。代わりに、「停止」イベントで手動でコピーしてみてください。そうすれば、新しい DOM 要素をどうするかを指定できます。

于 2012-11-20T15:32:00.293 に答える