В сафари iOS, когда пользователь останавливает элемент прокрутки, event.target не может вернуть правильный элемент под пальцем

Проблема

Вот пример, протестируйте его на сафари iOS, пожалуйста.

В этом примере, когда пользователь касается одной привязки, фон привязки в месте касания становится серым.

Когда пользователь прокручивает элемент и сразу же касается элемента, чтобы остановить его до того, как он остановится сам. Неправильный элемент станет серым. На самом деле якорь в позиции касания перед прокруткой станет серым.

Возможные решения

  1. Лучшее решение — получить правильную привязку в позиции касания при касании-остановке элемента прокрутки.

  2. Если правильный якорь не может быть получен, перестаньте становиться серым, когда сенсорный стоп принимает элемент прокрутки. Но как я могу узнать, прикасается ли пользователь к прокручиваемому элементу или просто нажимает? Другими словами, как узнать, прокручивается ли элемент?


person Gerhut    schedule 09.08.2012    source источник


Ответы (1)


столкнуться с этой проблемой тоже. Прокручивая список результатов поиска, коснитесь одного из них и получите подробную информацию. Это будет работать только тогда, когда прокручивающая шляпа полностью остановится. Пока в списке было какое-то движение, касание выбирало не тот элемент.

простое решение: отключить родную прокрутку, вынуть

-webkit-overflow-scrolling: touch;

Он больше не прокручивается так красиво, но теперь нажатие работает.

На этом этапе вы можете заглянуть в библиотеки, которые возвращают приятные эффекты прокрутки, если они вам действительно нужны.

person Jens    schedule 28.10.2013