Прокрутка прокрутки IOS -webkit-overflow на неправильной оси или вообще не

Я создаю мобильное приложение для IOS, с html5. Я использую «-webkit-overflow-scrolling: touch», чтобы получить собственную прокрутку инерции, но это очень плохо. Я решил проблемы с контентом, но не до тех пор, пока прокрутка не остановится, но одна постоянная ошибка:

Когда я пытаюсь прокручивать вверх и вниз, ничего не происходит, но когда я пытаюсь прокручивать по горизонтали, содержимое прокручивается вертикально (90 градусов от оси). Если я перемещусь вокруг своего приложения и вернусь на страницу, он иногда будет исправлен. Кроме того, иногда он не будет прокручиваться вообще, несмотря на то, что он наполнен контентом.

Из того, что я искал в Google, консенсус, похоже, заключается в том, что Apple знает об этой ошибке и не собирается фиксировать ее в ближайшее время. Кто-нибудь нашел решение для правильной работы -webkit-overflow-scrolling?

Я тоже много месяцев боролся с этой ошибкой. Лучшая характеристика, которую я нашел:

https://bugs.webkit.org/show_bug.cgi?id=87391

в котором говорится, что это происходит, когда страница имеет iFrame, а содержимое задано из Javascript. Моим текущим обходным решением в Graphics Codex версии 1.6 является использование iScroll4 для явной прокрутки страницы, а не с помощью сенсорной прокрутки. Поскольку Javascript является однопоточным, это может быть медленным, если вы также выполняете анимацию или загружаете фоновый контент.

Я столкнулся с той же проблемой: узел с использованием -webkit-overflow-scrolling: scroll которая будет периодически перемещаться вверх / вниз только с помощью жестов прокрутки влево / вправо.

Вот что я нашел возможными причинами:

  • iframe присутствует на странице где угодно, видимо или иначе ( источник )
  • visibility: hidden применяемый к любому родителю прокручиваемого узла ( источника )

Однако ни одна из этих ситуаций не присутствовала в моем веб-приложении. У меня было прокручиваемое <ul> внутри чистого текстового мода CSS, которое я написал, которое использовало умный трюк, чтобы добавить прозрачную подложку – an ::after псевдоэлемента с position: fixed .

Когда я удалил position: fixed из псевдоэлемента, проблема исчезла! Конечно, это сделало мой хитроумный трюк бесполезным, но было интересно узнать, что эта ошибка может быть вызвана этой ситуацией.

Устройство: iOS 5.1.1 на iPad iPad 3 (сетчатка)

Нарушение кода:

 /* Underlay */ .dialog::after { z-index: -1; position: fixed; /* <--- This was the problem! */ top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0,0,0,0.4); content: ""; } 

tl; dr: если содержащие элементы имеют псевдоэлемент фиксированной позиции, удаление его может устранить вашу проблему прокрутки.

Я знаю, что проблема старая, но мне пришлось сделать свой сайт на iOS 5. К сожалению, я не смог удалить и заменить iframe. Я заметил, что наличие iframe вызвало проблему только в том случае, если она была визуализирована перед элементом, который должен прокручиваться плавно. Добавление iframe в документ позже (после того, как элемент с -webkit-overflow-scrolling: touch) устранил проблему 🙂

  • UIWebView застрял после webViewDidStartLoad
  • Прокрутка iOS Safari вверх не работает на определенных страницах. Зачем?
  • Как я могу получить файл с помощью WKWebView?
  • Youtube iframe встраивается с масштабированием webkit-transform на iOS
  • iOS 10 Webkit Воспроизведение нескольких видеороликов Inline
  • Как остановить MPAVItem сбой моего приложения iOS с видео в моем UIWebView?
  • -webkit-overflow-scrolling: touch разбивает мой -webkit-scrollbar css в iOS
  • WKWebKit: нет параметров dataDetectorTypes
  • iOS 9 `-webkit-overflow-scrolling: touch` и` overflow: scroll` перерывы прокрутки
  • Как запретить WKWebView неоднократно запрашивать разрешение на доступ к местоположению?
  • Backspace внутри элемента INPUT приводит к тому, что фиксированное положение DIV перемещается в курсор
  • Interesting Posts

    iOS9, почему layoutSubviews пользовательского UITableViewCell вызывается в dequeueReusableCellWithIdentifier: forIndexPath, если используется systemLayoutSizeFittingSize

    Дизайн эскиза iOS

    'ld: file not found' после изменения имени продукта в Xcode

    Поступление Verifiy iOS с Node.js

    Различия между веб-сайтами и длительным опросом для пошагового игрового сервера

    lldb точка останова для всех методов в объекте класса c

    Apple отклонила приложение из-за аварии Я не могу воспроизвести

    Как я могу использовать JavaScript для установки уровня масштабирования на мобильном сафари?

    или запрос с включением

    UITapGestureRecognizer падает с нескольких кранов

    Как добавить представление под табличным представлением, но оно прокручивается с помощью ячеек?

    UIWebView и клиентские сертификаты на iOS 6

    Как узнать, находится ли NSDate в указанном диапазоне?

    NSFileManager – Swift – Браузер файлов

    Кэш-память с резервным копированием для UIImageView в AFNetworking

    Давайте будем гением компьютера.