// timeline - блок с горизонтальным скроллом
timeline.onmousedown = () => {
let pageX = 0;
document.onmousemove = e => {
if (pageX !== 0) {
timeline.scrollLeft = timeline.scrollLeft + (pageX - e.pageX);
}
pageX = e.pageX;
};
// заканчиваем выполнение событий
timeline.onmouseup = () => {
document.onmousemove = null;
timeline.onmouseup = null;
};
// отменяем браузерный drag
timeline.ondragstart = () => {
return false;
};
};