Здравствуйте, делаю автоскролл для dnd. Когда перетаскиваемый элемент доходит до края экрана, начинается автоскролл.
Вот код:
if (item.getBoundingClientRect().right + 20 > document.body.getBoundingClientRect().width) {
this.scroll(1, 'horizontal');
} else {
this.scroll(0, 'horizontal', true);
}
scroll = (step, direction, stop = false) => {
if (stop) clearTimeout(this.scrollId); // Не удаляет, т.к scrollId не совпадает
if (direction === 'horizontal') {
document.documentElement.scrollLeft += step;
this.scrollId = setTimeout(() => this.scroll(step, direction), 100);
}
};
Проблема в том, что
scrollId при проверке stop не совпадает со
scrollId, который я задаю.
P.S событие
mousemove