Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Web > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail


Ответ
 
Опции темы
Старый 28.02.2018, 12:43   #1
zahar_92
 
Регистрация: 08.10.2016
Сообщений: 3
Лампочка Как запретить переход по ссылке в OwlCarousel?

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

Прошу помощи!!
zahar_92 вне форума Ответить с цитированием
Старый 28.02.2018, 21:10   #2
olegK<<
Пользователь
 
Аватар для olegK<<
 
Регистрация: 05.11.2017
Сообщений: 59
По умолчанию

Цитата:
Сообщение от zahar_92 Посмотреть сообщение
$('a[class*="_toggler"]').click(function (e) { e.preventDefault(); })
Так клик срабатывает 1 раз. В старых версиях jquery live, сейчас on
Код:
$('a[class*="_toggler"]').live("click", function (e) { 
e.preventDefault(); 
})
Код:
$('a[class*="_toggler"]').on("click", function (e) { 
e.preventDefault(); 
})
olegK<< вне форума Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как в делфи сделать переход по ссылке artbotva Общие вопросы Delphi 11 06.05.2012 21:13
Как запретить переход на определенный URL в Webbrowser? Marsel737 Общие вопросы Delphi 23 15.11.2009 20:19
Как запретить переход на ячейку StringGrid Comer_Jus Общие вопросы Delphi 2 26.05.2008 15:04
Как запретить переход между диалоговыми окнами. dnkR Общие вопросы Delphi 1 18.01.2007 07:59