Конечно, это можно сделать, но это не будет тривиальным
Если вы хотите, чтобы он работал точно так же, как в Excel (нажмите и удерживайте + перетащите и отпустите), это будет более сложная работа, чем предполагалось в первый момент.
Вы наверняка будете отображать значения в определенном столбце таблицы, но когда вы выбираете эти значения, браузеры обычно выбирают текст в соответствии с потоком. Это означает, что вы получите выделенный текст, например (v - это столбец value ):
v
| | |x|
|x|x|x|
|x|x|x|
а не
v
| | |x|
| | |x|
| | |x|
как вы и хотели бы.
Чтобы последний работал, вам нужно отключить выделение текста (используя событие onselectstart
), а затем использовать события drag & drop
, чтобы программно выделить определенные ячейки в столбце значений.
Вы также можете использовать менее интуитивно понятный способ (который будет работать иначе, чем в Excel) использования событий ячейки click
для этого, чтобы сделать ваш код короче и проще.