Метод JQuery focus() на ipad

Возможный дубликат:
iPad HTML Focus

Кто-нибудь знает, как получить метод focus() из jquery для работы с ipad или, возможно, обходным путем? То, что я пытаюсь сделать, - заставить клавиатуру всплывать на веб-странице, так как у меня есть jquery, фиксирующий нажатия клавиш для выполнения событий. Однако, без текстового поля на странице, я не знаю, как заставить клавиатуру всплывать. Теперь, когда у меня есть текстовое поле на странице, я пытаюсь использовать jquery, чтобы установить фокус на текстовое поле, чтобы клавиатура всплывала. Кроме того, я устанавливаю стиль текстовых полей для отображения: none, так что фокус переходит в текстовое поле, но он не отображается, поэтому функциональность, похоже, работает. Однако focus() разбит на ipad! Кто-нибудь может мне помочь?

Ответ 1

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

Ниже ilumin имеет хорошее решение, но оно не единственное. В основном, из того, что я нашел, до тех пор, пока вы выполняете вызов функции .focus() внутри пользовательского события (например, mouseup или любое из событий касания (что, вероятно, предпочтительнее для сенсорного устройства)), то у вас не должно быть проблем.

В какой-то степени я понимаю, почему Apple сделала это ограничение, но в то же время это сделало мою работу очень сложной.

Ответ 3

К сожалению, вы увидите, что клавиатура появляется, когда вы фокусируетесь в текстовом поле. См. этот ответ.