Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Как запретить переход по ссылке в OwlCarousel (https://javascript.ru/forum/jquery/72815-kak-zapretit-perekhod-po-ssylke-v-owlcarousel.html)

zahar_92 28.02.2018 11:29

Как запретить переход по ссылке в OwlCarousel
 
Всем привет!
Использую OwlCarousel в качестве слайдера. На каждом слайде есть ссылка вида href="#". Клик по ссылке открывает модальное окно.
Если вручную не перелистывать слайды, то клик по ссылке не прокручивает страницу вверх и окно открывается, все ок. Но если быстро перелистнуть слайд несколько раз, а потом нажать на ссылку, то модальное окно не открывается и страница прокручивается вверх.
Интересно, что это происходит, если карусель сделать бесконечную, т.е. она листается по кругу. Если бесконечную прокрутку выключить, то такой проблемы нет.
В JS не силен, с помощью гугла нашел, что отменить стандартное действие браузера можно с помощью e.preventDefault(), сделал такую функцию:
$('a[class*="_toggler"]').click(function (e) { 
e.preventDefault(); 
})

Но работает она только на первом слайде, после прокрутки все равно не срабатывает.
В справке к OwlCarousel нашел такую конструкцию
$('.owl-carousel').owlCarousel({ 
onDragged: callback 
}); 
function callback(event) { 
... 
}

Эта функция отслеживает перемещение слайда путем перетаскивания и по идее ее можно как-то использовать в решении моей проблемы, но не могу понять как, т.к. не хватает знаний!

Прошу помощи!!

рони 28.02.2018 11:44

zahar_92,
открытие модального окна сделайте после создания слайдера


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