jQuery UI Selectable コンポーネントを使用しています。コントロール/コマンドを押さずに複数の選択を許可するために、次のものがあります:(別のスレッドから)
jQuery("#myUnorderedList").bind("mousedown", function(event) {
return event.metaKey = true;
}).selectable();`
これは、複数のアイテムを選択し、ドラッグして選択できるようにするのにうまく機能します。問題は、mousedown を metaKey にバインドすると、コマンド/コントロール キーを実際に押した場合と同じ動作が得られないことです。
動作を示す短いスクリーンキャストを次に示します -スクリーンキャストの例
これはjsfiddleの例です(自分ではなく別のユーザーから)-metaKeyをtrueに設定
jfiddle の例で、クリックしてドラッグして最初の 4 つを選択したとします。現在4名が選ばれています。metaKey が true に設定されているため、5 または 6 をクリックして選択に追加できます。代わりに、5 をクリックして 4 (すでに選択されている) の上にドラッグし、マウスを離さずに 5 にドラッグすると、4 が選択されなくなります。
同じことを試してみてください。ただし、今回はコマンド/コントロールを保持します。最初の 4 つが選択されている場合は、5 をクリックして (コマンド/コントロールを押したまま) 4 の上にドラッグしてから下に戻すと、4 が選択されたままになります。
基本的には、ドラッグすると選択されたアイテムが選択解除されますが、コマンド/コントロールキーを押すと、選択されたアイテムが選択されたままになります。
停止、開始、選択、選択解除の各イベントのメタキーをconsole.logに記録しました。メタキーがマウスダウンにバインドされている場合、すべてtrueを返しますが、コマンドキーを実際に押した場合とは動作が異なります。