Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Как сделать сопротивление при touch управление слайдером (https://javascript.ru/forum/jquery/65240-kak-sdelat-soprotivlenie-pri-touch-upravlenie-slajjderom.html)

Роман Андреевич 06.10.2016 18:31

В сети особо нет ответов на такие задачи. Поиск выдает готовые варианты.

Coriolan161 06.10.2016 18:31

Роман Андреевич,
Можно достать номер слайда в коллекции и чуть попробовать поменять

if (directionSide == "left" && index !== 1) {
  if (!nextItem.length) {
    //different = 
    distance = distance + (distance / 10);
    changeStyle($this, "margin-left", distance);
  }
} else if (directionSide == "right" && index !== 'длина коллекции'-1 ) {


Немного непонятно кто такие nextItem.length и prevItem.length
Это в айтемах коллекции лежат ещё какие-то айтемы?

Роман Андреевич 06.10.2016 18:32

Coriolan161,
Это следующий и предыдущий слайд от активного (который сейчас показывается), т.к. слайд равен ширине экрана.

Coriolan161 06.10.2016 18:33

Роман Андреевич,
Зацикливание тоже делается через проверку номера текущего слайда, если последний вернуться к (".slider_item")[0]

Coriolan161 06.10.2016 18:35

Роман Андреевич,
карусели для этого клонируют айтемы

Роман Андреевич 06.10.2016 18:41

Coriolan161,
В этом и суть при управлении на кнопках, происходит зацикливание, тут все просто и работает.

А вот когда листаешь пальцем и упираешься в последний слайд при этом пытаешься листать дальше, получаешь сопротивление. Т.е. сам слайдер плавно отодвигается на небольшое расстояние от края, а не следует за пальцем.

Роман Андреевич 06.10.2016 18:42

По сути не важен номер слайда в коллекции, потому что мы знаем что есть (или нету) следующий или предыдущий слайд.

рони 06.10.2016 19:06

Роман Андреевич,
строка 92
if (!nextItem.length && activeItem.index() < itemLength - 2) {

рони 06.10.2016 19:17

Роман Андреевич,
http://javascript.ru/forum/dom-windo...tml#post318030

рони 07.10.2016 00:45

Роман Андреевич,
http://www.jqueryscript.net/demo/Res.../swiper-demos/


Часовой пояс GMT +3, время: 04:24.