Не могу нажать кнопку, когда софт-клавиатура видна

0

Когда элемент ввода текста имеет фокус (и мягкая клавиатура видна), я не могу напрямую нажать кнопку отправки (которая хорошо видна). Я должен сначала отпустить клавиатуру (щелкнув в другом месте или на "Готово" на клавиатуре), а затем нажмите кнопку "Отправить".

Это путаное поведение. Я рассмотрел возможность удаления кнопки входа в систему, когда клавиатура видна, но это было бы слишком запутанным (поскольку пользователи не знали, что они могут нажать "Перейти", или будут раздражены, что кнопка входа продолжает исчезать).

Это происходит только в iOS (не уверен, что он ограничен iOS 7, но подозревает, что это может быть), и я использую Telirik AppBuilder для своего приложения.

  • 0
    Отмените клавиатуру (используя [textFied resignFirstResponder];) для этого конкретного поля в кнопке отправки action.so, при нажатии кнопки отправки клавиатура будет автоматически закрыта.
  • 0
    @gunas Как уже упоминалось в ОП, я не пишу нативный код. Это должно быть сделано через упомянутую структуру.
Теги:
keyboard
telerik

2 ответа

1

Поскольку я использовал тэг <button> мягкая клавиатура появилась, когда это не было необходимо. Я теперь изменил все для <table> (внутри <td>, но может быть <div>) с <img> внутри значков. Чтобы таблица выглядела скорее как кнопка, есть класс CSS для цветов/границ. В верхней части также находится область отправки.

Страница может быть проверена по адресу http://ask.stroudvoices.co.uk/

Казалось бы, Android (предположительно iPad и т.д.) Обрабатывает кнопки как другой тип <input>, тогда как <table> рассматривается как <body>.

Иногда есть простой ответ, по старой технологии!

1
function isTextInput(node) {
return ['INPUT', 'TEXTAREA'].indexOf(node.nodeName) !== -1;
}
document.addEventListener('touchstart', function(e) {
    if (!isTextInput(e.target) && isTextInput(document.activeElement)) {
        document.activeElement.blur();
    }
}, false);
  • 0
    Спасибо за ответ. Я попробую сегодня и приму, если это сработает.
  • 0
    Можете ли вы объяснить, почему это должно работать?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню