Показать сообщение отдельно
  #1 (permalink)  
Старый 14.12.2016, 00:43
Аспирант
Отправить личное сообщение для orionpro Посмотреть профиль Найти все сообщения от orionpro
 
Регистрация: 23.12.2015
Сообщений: 39

Убрать событие touchmove и отменить preventDefault()
Дело вот в чём, нужно убрать скролл у элемента на iphone (IOS в общем).
А как известно, на iphone, overfow: hidden не работает, ибо это устройство от дьявола, кто работает в производстве сайтов поймёт)).

Нашёл такое дело:
document.addEventListener('touchmove', function(e) {e.preventDefault();}, true);

Он, кстати, убирает скролл, вот только мне его надо на кнопку убрать когда менюшка открывается (у Контейнера, в котором основные блоки, я убираю скролл кодом выше), а потом когда менюшка закрывается, мне бы опять сделать скролл чтобы работал. Но тут начинается беда. Убрать событие таким способом не получается:
div.addEventListener('click', listener, false);
div.removeEventListener('click', listener, false);

Событие может и снимается, вот только preventDefault() отменить не получается и так у iphone скролл и не появляется... чего я только не пробовал.
Помогите люди добрые советом, спасибо.
Ответить с цитированием