мы разрабатываем приложение, которое одновременно является мобильным и настольным, когда мы используем .focus () в мобильной версии, клавиатура не отображается, мы пытаемся запустить щелчок в функции фокуса $ ('# numeroCheque'). Focus (function () { $ ('# numeroCheque'). trigger ('щелкнуть'); });

, но клавиатура по-прежнему не отображается, сталкивался ли кто-нибудь с этой проблемой раньше и что мы можем сделать, чтобы ее решить. Спасибо.

erick.chali

Ответов: 3

Ответы (3)

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

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

$(document).ready(function() {
    $('#numeroCheque').click(function(e){
        $(this).focus();
    });
});

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

исх .: https://cordova.apache.org/docs/en/2.7.0/guide/project-settings/ios/

Другой вариант - установить атрибут input element autofocus, но даже это, я считаю, не будет работать и на мобильных устройствах.

2022 WebDevInsider