Есть ли способ прокручивать таблицу при перемещении строки?

#javascript #tabulator

#javascript #табулятор

Вопрос:

У меня есть tabulator таблица со многими элементами, и перемещение строки за пределы отображаемого диапазона строк включает в себя несколько шагов (перемещение, удаление, прокрутка, затем повторное перемещение и т.д.)

Кто-нибудь придумал способ прокрутки таблицы, когда пользователь перетаскивает строку выше или ниже отображаемого диапазона? Вот gif и JSFiddle, которые демонстрируют проблему.

введите описание изображения здесь

https://jsfiddle.net/sunny001/puqwemnf/5/


 const data = [];
for (let i = 0; i < 10000; i  ){
    data.push({id: i, name: 'name'   i})
}

const table = new Tabulator('#table', {
    height: 400,
    data: data,
  movableRows: true,
  columns: [
    {
     rowHandle: true,
     formatter: "handle",
     headerSort: false,
     frozen: true,
     width: 30,
     minWidth: 30
    },
    {field: 'id', title: 'id'},
    {field: 'name', title: 'name'}
  ],
  selectable: true
})
 

Комментарии:

1. Я не понимаю «проблемы». Когда я перетаскиваю строку таблицы вниз, таблица прокручивается, и я оставляю строку на месте. Когда я затем беру строку и перетаскиваю вверх, таблицы прокручиваются в противоположном направлении и позволяют мне отбросить строку туда. Чего мне не хватает?

2. @RandyCasburn Я не вижу, чтобы это происходило в Firefox или Chrome, так что это может быть проблема, связанная с конкретным браузером, для которой tabulator может быть открыта проблема . Ты проверил, @spring?

3. Я вижу — Chrome не работает, в то время как Safari работает. Интересно.

4. @Mike’Pomax’Camermans — да, похоже, что это ошибка, опубликованная 18.12.2010 — github.com/olifolkerd/tabulator/issues/3137

5. В таком случае, я думаю, вероятно, имеет смысл поместить это в свой пост и спросить людей, знают ли они обходной путь, чтобы было ясно, что вы знаете, что спрашиваете о том, как справиться с известной ошибкой. (но тогда вы также как бы берете на себя ответственность прокомментировать ошибку с помощью любого обходного пути, который люди в конечном итоге рекомендуют)