Всем привет. Есть вот такой блок: скажите пожалуйста, что нужно сделать, чтобы была возможность скролить этот блок при зажатой левой клавиши мыши.
(function(){
let speed = 2; // Скорость скролла.
let scroll = document.querySelector('.scroll');
let left = 0; // отпустили мышку - сохраняем положение скролла
let drag = false;
let coorX = 0; // нажали мышку - сохраняем координаты.
scroll.addEventListener('mousedown', function(e) {
drag = true;
coorX = e.pageX - this.offsetLeft;
});
document.addEventListener('mouseup', function() {
drag = false;
left = scroll.scrollLeft;
});
scroll.addEventListener('mousemove', function(e) {
if (drag) {
this.scrollLeft = left + (e.pageX - this.offsetLeft - coorX)*speed;
}
});
})();
.scroll {
position: relative;
overflow-x: auto;
overflow-y: hidden;
height: 200px;
white-space: nowrap;
}
.block {
display: inline-block;
height: 100%;
width: 80vw;
background-color: orange;
border-right: 3px solid #045acf;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
<div class="scroll">
<div class="block"></div
><div class="block"></div
><div class="block"></div
><div class="block"></div
><div class="block"></div>
</div>
Можно запариться, измерять расстояние между точками нажатия и отпускания, разделить на пройденное время - в зависимости от этого числа поставить setInterval, который по инерции продолжит скроллить несколько миллисекунд.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Необходимо создать поток, в котором будет функция и очередь разных параметров и он будет по мере добавления в очередь данных параметров запускать...
У меня есть событие, которое добавляет в список типа List данныеИ во всём остальном коде я использую этот список
В обычном C# проекте я просто скопировал этотdll в папку проекта и использовал
Сегодня поменяли ПК на более мощныйУстановили такую же версию Visual Studio (2015 Enterprise)