iOS Safari флаг для остановки движения страницы? - PullRequest
2 голосов
/ 04 ноября 2011

Мне любопытно, нашел ли кто-нибудь решение для отключения стандартного подпружиненного перемещения страницы iOS, когда пользователь проводит пальцем по странице.Для страниц, которые полностью видимы (т. Е. Прокрутка не требуется), страница перемещается и возвращается на место.

Я обнаружил, что отключение "touchstart" эффективно исправит это, но затем оно сломается все события клика !?!Например:

document.addEventListener('touchstart', function(e) {
    e.preventDefault();
}, false);

Я пробовал другие события касания / мыши, но не повезло.Я предполагаю, что кто-то знает секретное свойство CSS или JavaScript webkit, которое может отключить эту функцию.

Редактировать: в качестве примера того, что я ищу, вот аналогичноеОтветьте за отключение других поведений iOS Webkit по умолчанию через CSS.К сожалению, это не относится к моему вопросу:

Запретить по умолчанию Нажмите, но не по умолчанию Перетащите в iOS MobileSafari?

1 Ответ

2 голосов
/ 04 ноября 2011

Я мог бы поклясться, что попробовал это, но похоже, что "touchmove" делает трюк?

document.addEventListener('touchmove', function(e) {
    e.preventDefault();
}, false);

Обновление: После дополнительных испытаний да, это действительно делает свое дело. Кажется, что никогда не следует использовать e.preventDefault () для «touchstart», так как это также предотвращает все последующие события мыши.

...