質問: webページのテーブル行をドラッグ可能にするにはどうすればよいですか? ユーザーが行を並べ替えられるようにする必要があるwebページにテーブルがあります。ユーザーに行をドラッグして並べ替えさせることを考えていました。しかし、ユーザーがそれを実行できることをユーザーにどのように通知しますか?最初の列に空のセルを作成する必要がありますか。それは、gmailのような点または縦線のある列を、受信トレイの各メールに設定する必要がありますか?そのような画像はどこで入手できますか?カーソルまたは「移動」カーソルに「グラブハンド」アイコンを使用しますか?テーブルの上にカーソルを置いているときにカーソルを表示しますか、それとも「グラブエリア」だけですか。ユーザーが行の一部をつかんでドラッグできるようにしますか?
回答: 37signals ' basecamp はこれで素晴らしい仕事をします:アイテムにカーソルを合わせると、コントロールがアイテムの左側に表示されます。コントロールの1つは上/下矢印です。そのコントロールにカーソルを合わせると、マウスカーソルが移動カーソルに変わります。マウスボタンを押したままにすると、グラブされたアイテムの位置が、マウスの位置に対応する垂直軸に移動します。マウスボタンを離すと、最も近い許容可能な位置にアイテムがドロップされます。ドラッグされているアイテムの位置は常に画面上で更新されるため、どこにあるかがわかります。gmailのtodoリスト機能では、アイテムにカーソルを合わせると左にドラッグサーフェスが表示されるため、処理方法が少し異なります。ドラッグサーフェスにカーソルを合わせると、カーソルが手のアイコンに変わります(グラブアイコンではなく、閉じた手のアイコンです)。以降の動作はbasecampと同じです。このパターンの詳細については、yahooデザインパターンライブラリを参照し、 興味深い瞬間のストーリーボードグリッド を参照してください。