Можно ли отключить / повторно включить fancybox только на определенных элементах? - PullRequest
2 голосов
/ 06 июня 2011

Мне нужно отключить / включить fancybox для элементов списка в соответствии с их состоянием фокуса.
Я не могу полностью связать / отменить привязку события click, потому что есть другие функции, прослушивающие это событие.
Итак, мне нужно знать, предоставляет ли fancybox такой способ.
Если нет, то любые альтернативы fancybox, отвечающие этому требованию, также будут оценены.Спасибо.

Ответы [ 4 ]

6 голосов
/ 06 июня 2011

Почему бы вам просто не поиграть с классами ваших элементов, используя addClass и removeClass? Только тогда, когда у них есть этот класс, сундук сработает.

K

1 голос
/ 11 декабря 2012

К сожалению, ни одно из предложенных решений не было тем, которое я искал ...
Правильный ответ предоставил здесь @Naren Sisodiya, который предложил использовать метод live() (которыйв то время еще не был превзойден новым on методом).
Я признаю, что вопрос мог быть задан в лучшей форме .. Извините всех ..
Спасибо.

0 голосов
/ 07 августа 2017

fancybox имеет связанные события клика, у них есть прокси-имя - fb-start, вы можете отсоединить обработчик.

у меня работает,

$("#your-element").fancybox(); //fancybox is binded click.fb-start on #your-element

$( "#your-element" ).unbind('click.fb-start');  //click is unbinded

для этого у вас должна быть загружена библиотека jquery

0 голосов
/ 23 сентября 2012

Это сработало для меня:

$('#element').removeClass('fancybox');

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...