Не получается снять обработчик
Всем привет. Решил вот попробовать свои силы и написать jQuery-плагин для открытия картинок в модальном окне.
Проблема как всегда возникла на самом последнем этапе: захотел сделать чтобы при прокрутке колесом мыши менялись картинки. Сделал, но вместе с картинками прокручивается и вся страница за модальным окном.. Пробую навешивать и снимать обработчики при закрытии, не получается снять. Подскажите, пожалуйста
// вешаю
$(window).on('DOMMouseScroll mousewheel', function(e){
imgOnScroll(e);
});
// пытаюсь снять
$(window).off('DOMMouseScroll mousewheel', function(e){
imgOnScroll(e);
});
var imgOnScroll = function(e){
window.preventdefault(e);
var evt = e.originalEvent ? e.originalEvent : e,
delta = evt.detail ? evt.detail*(-40) : evt.wheelDelta
// и т.д...
|
sash003,
// вешаю
$(window).on('DOMMouseScroll mousewheel', function(e){
imgOnScroll(e);
});
// пытаюсь снять
$(window).off('DOMMouseScroll mousewheel', imgOnScroll);
var imgOnScroll = function(e){
window.preventdefault(e);
var evt = e.originalEvent ? e.originalEvent : e,
delta = evt.detail ? evt.detail*(-40) : evt.wheelDelta
// и т.д...
|
А включаешь - не работает :) :help:
|
sash003,
весь код в студию! |
Цитата:
|
Вложений: 1
Дааа... Там фуннция написана за пределами замыкания, вот я и подумал, что нужно так писать.. Я такое дно :)
function preventdefault(e){
e = e || window.event;
if(e.preventDefault) e.preventDefault();
else e.returnValue = false;
}
А всё было так просто.. Зачем вешать событие на всю бодью если
el = document.querySelector('.popopenDiv');
Но всё равно прокрутка не работает как надо. Если вешаю попап на один див, всё чудесно, а если на два, то прокручиваются только несколько картинок иногда. Буду очень благодарен, если посмотрите на код. Прошу не ржать в голос :haha: |
| Часовой пояс GMT +3, время: 09:48. |