Как предотвратить отображение адресной строки при переходе по удаленным ссылкам в Rails 3 на устройстве iOS? - PullRequest
0 голосов
/ 07 января 2012

У меня очень простое приложение со списком Rails 3.1, предназначенное для webkit, и я хочу, чтобы анимация «завершенного» элемента списка была первым приоритетом, когда пользователь касается / щелкает элемент.

Сначала я реализовал это с помощью вызова jQuery .ajax() для моего маршрута в Rails (например, / lists / 1 / items / 1 / complete), поэтому сначала я вызвал метод анимации, а затем вызов ajax для действия Rails / маршрут. Это отлично работает на моем iPhone и iPad.

Я решил, что хочу изменить это на «правильные» link_to ... :remote => true теги. Я сохранил анимационный вызов на странице и позволил Rails запустить обновление в фоновом режиме.

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

Кто-нибудь знает, почему это происходит, когда я использую теги Rails link_to ... :remote => true? Есть ли какой-то вариант, который я пропускаю или обходной путь для этого?

Спасибо!

1 Ответ

0 голосов
/ 10 января 2012

Несколько лет назад мне пришлось сделать нечто подобное, и я использовал небольшой взлом, который я заметил на мобильном сайте Gmail. По сути, они просто переместили окно просмотра на загрузку, чтобы оно было «скрыто», когда вы на него смотрите.

Я использовал что-то вроде этого.

<body onload="setTimeout(function() { window.scrollTo(0, 1) }, 200);">

 body of the website ....

</body>

Я не пробовал это недавно и не уверен, работает ли он с новым мобильным веб-набором, но его стоит попробовать.

Дайте мне знать, если вам нужно что-нибудь еще,

Kent

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...