ответ Томас Бачем - это один!
Я переписал его в jQuery. Просто добавьте класс scrollFix
к желаемым входам, и вы готовы к работе. Или прикрепите обработчики событий ко всем входам и текстовым областям, используя $('input, textarea')
.
Теперь, когда вы касаетесь и прокручиваете вход на iOS 8+, вход отключается на всех своих pointer-events
(включая проблемное поведение). Эти pointer-events
включаются, когда мы обнаруживаем простое касание.
$('.scrollFix').css("pointer-events","none");
$('body').on('touchstart', function(e) {
$('.scrollFix').css("pointer-events","auto");
});
$('body').on('touchmove', function(e) {
$('.scrollFix').css("pointer-events","none");
});
$('body').on('touchend', function(e) {
setTimeout(function() {
$('.scrollFix').css("pointer-events", "none");
},0);
});