webirus
@webirus
Тыжверстальщик! Наверстай мне упущенное...

Как отменить e.preventDefault?

Собственно, при клике на кнопку, у меня вызывается отмена скролла на мобильных.

$('.callback__link').click(function(e){
  // какие-то действия
  $(document).on('touchmove',function(e){
    e.preventDefault();
  });
});

А по клику на .popup__close, нужно вернуть все в нормальное состояние.
  • Вопрос задан
  • 1832 просмотра
Решения вопроса 2
@KFan
Веб-программист
var stop_mobile_scroll = false;

$('.callback__link').click(function(e){
	stop_mobile_scroll = true;
});

$('.popup__close').click(function(e){
	stop_mobile_scroll = false;
});

$(document).on('touchmove',function(e){
	if (stop_mobile_scroll)
		e.preventDefault();
});
Ответ написан
webirus
@webirus Автор вопроса
Тыжверстальщик! Наверстай мне упущенное...
Решил проще.

Вызов попапа:
// 1 вариант
$(document).bind('touchmove', false);
// 2 вариант
$(document).bind('touchmove', function(e){e.preventDefault()});
// оба работают

Скрытие попапа:
$(document).unbind('touchmove');
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы