MobileSafari, как правило, имеет неправильное поведение кнопки HTML (неправильное значение: "не как родная кнопка iOS" ). Правильное поведение кнопки выглядит следующим образом:
- Пользователь прикасается к кнопке: Основные кнопки
- Пользователь вытаскивает палец из кнопки: Кнопка dims
- Пользователь перетаскивает палец обратно в кнопку: Основные кнопки
- Пользователь вытаскивает пальцы из кнопки и отпускает: Кнопка не нажимает
Эта проблема применима ко всем кликабельным вещам, таким как ссылки (когда -webkit-touch-callout
установлено на none
). До сих пор я нашел только одно веб-приложение, которое имеет правильное поведение кнопки: Facebook. Рассматривая их код для этого, похоже, что они сделали довольно много прыгающих сквозных обручей, чтобы заставить его работать правильно (отслеживая все события мыши вручную, а не используя кнопки вообще). Код плотный, использует Javelin, и я еще не понял все части, необходимые для его работы.
Я знаю, что я немного издеваюсь над собой (поскольку, если бы это было легко, все это сделали бы), но я все равно спрошу. Есть ли вообще доступный кусок кода, который обрабатывает эту функцию? Есть ли более простое решение, чем обратное проектирование Javelin, даже если оно применимо только к WebKit? (Javelin не очень-то хорошо подходит для моих легких потребностей.) Моя конечная цель - правильное поведение кнопок для UIWebView
, встроенного в собственное приложение, поэтому приемлемы гибридные решения JavaScript/ObjC (хотя не существует гибридных подходов ум).