アプリケーション1 から n までの項目 のリストがあり、ユーザーにそれらを n から 1 までランク付けしてもらいたいとします。各項目には期日があります。アイテム 1 の期日が最も近く、アイテム n が最も遅い期日です。アイテムの期限が切れる前に、ユーザーが希望するランク順でアイテムをランク付け/ソートするようにします。期日が過ぎたアイテムをユーザーがランク付け/並べ替えできないようにしたいが、並べ替えられたランクですべてのアイテムを表示したい。
期限切れのアイテムから期限切れのアイテムを分離するには、それらを 2 つの別個のテーブルにロードします。
--期限テーブル: 上部のテーブルには、ユーザーが並べ替えてランク付けできる期限アイテムのみが保持されます。順位は降順で読み込まれます。(ランク順は、以下の jsFiddle の例で目に見える数字です)
--期限切れのアイテム テーブル: 下部のテーブルには、ユーザーが並べ替えることができなくなった期限切れのアイテムが表示されます。アイテムが期日を過ぎてこのテーブルに入ると、以前に保存されたランクが保持されます。注文はアイテム順でカウントアップされます。期日順の昇順と同じです。
例ユーザーにランク付けしてもらいたい 10 個の項目のリストがあるとします。アイテムが期日を過ぎる前に、次のように期日表のみが表示されます。 . 画面に表示される数字は降順の順位です。
予定表の項目のランクは常に降順であるため、ユーザーは項目の信頼度を高くしたり低くしたりできます。ランク数は常にアイテム数と一致しますが、最初は逆になります。たとえば、アイテム 1 はランク ポジション 10 (一番上) から始まり、アイテム 10 はランク ポジション 1 (一番下) になります。
アイテムが期日を過ぎると、下のテーブルにそれらの期日を過ぎたアイテムが表示され、保持されます。ユーザーがアイテムを並べ替えて保存し、半分が期日を過ぎたとします。次のようにテーブルが表示される場合がありますhttp://jsfiddle.net/jpl1618/Y4tjJ/一番下のテーブルには、項目 1 から 5 がこの順序で保持されていることに注意してください。これは、一番下の表では、期限の昇順と同じアイテム順の昇順で並べられているためです。また、ユーザーがアイテム 4 と 5 をランク位置 10 と 6 に並べ替えたことにも注意してください。これらのランク位置は、アイテムの期限テーブルを再ランク付けするときに使用できなくなります。
期限切れのアイテムの例ここに jsfiddle.net/jpl1618/Y4tjJ/ アイテム 8 (位置 5) を位置 7 に移動し、アイテム 10 (位置 7) を位置 5 に移動できるはずです。結果があります:
item 9 => rank 9
item 6 => rank 8
item 8 => rank 7
item 10 => rank 5
item 7 => rank 4
または、項目 8 を位置 9 の一番上まで移動できるはずです。これにより、項目 9、6、10 が 1 つ下に移動します。次に、次のようになります。
item 8 => rank 9
item 9 => rank 8
item 6 => rank 7
item 10 => rank 5
item 7 => rank 4
アイテムの順序に関係なく、ランク順は同じ降順のままであることに注意してください。
質問現在の JS コードをどのように変更して、ロードされた順位を降順で保持する期日表の項目をランク付け/ソートできるようにするにはどうすればよいですか? 例では、ランク順は常に 9、8、7、5、4 を表示する必要がありますが、アイテムはそれらの位置に移動できます。
count = 5
countL = 5
L stands for locked
もう 1 つの小さな問題: クリックして並べ替えると、表の行の色が変わるのはなぜですか? 行をクリックしたときに行が他の色に点滅しないようにするにはどうすればよいですか?