Невозможно изменить тип ввода = текст или текстовое поле с помощью Cordova 1.9.0 и Android Jelly Bean

Я только что получил свой новый Nexus 7 и играл с Cordova (Phonegap). Я создал простую страницу с парой полей ввода текста и текстовой области. На моем iPhone я могу нажимать на текстовые поля, появляется клавиатура и я могу редактировать текст. На моем Nexus 7 под управлением 4.1.1 Jelly Bean с Cordova 1.9.0 клавиатура появляется, но когда вы печатаете, в текстовом поле или текстовой области ничего не появляется.

Я почти уверен, что мой код в порядке, так как он работает на iPhone и Android 2.3.5, но вот фрагмент кода на всякий случай:

  <body onload="onBodyLoad()">
  <div data-role="page" id="mainpage"> 
      <div data-role="header" data-theme="a"> 
          <h2>Lightweight</h2>
      </div>

      <div data-role="content">
        <div>
          <a href="#" data-role="button" data-icon="check" data-iconpos="bottom" data-theme="b" onClick=onClickInterrogate()>Interrogate</a>
        </div>

          <div align="center">
              <a href="#" data-role="button" data-inline="true" data-icon="forward" data-theme="b" onClick=downloadFile()>Send</a>
              <a href="#" data-role="button" data-inline="true" data-icon="gear" data-iconpos="right" data-theme="b" onClick=onClickSettings()>Settings</a>
          </div>

          <div align="center">
              <label for="serverUrl">Server URL:</label>
              <input type="text" name="name" id="serverUrl" value="urlGoesHere"/>
              <label for="zipFile">Zip File:</label>
              <input type="text" name="name" id="zipFile" value="tran1.zip"/>
          </div>
            <div data-role="fieldcontain">
                <label for="textarea">Textarea:</label>
                <textarea name="textarea" id="textarea">urlGoesHere</textarea>
            </div>
    </div>
      <div data-role="footer"> 
          <h1> &copy; 2012 Company Name </h1>
      </div>
  </div>   

Я только что попробовал это на Android 2.3.5, и он отлично работает. Кто-нибудь испытывал нечто подобное?

4 ответа

Решение

Проблема сохраняется и в 2.1.0.

Вот как я это исправил.

Удалите следующее правило CSS, и вы сможете счастливо вводить элементы ввода.

-webkit-user-select: none;

PhoneGap только что выпустил 2.0. Это исправило проблему с клавиатурой.

Я должен использовать свое приложение с браузером, и есть та же проблема. Это можно исправить только на textarea:

*{
    -webkit-touch-callout: none;
    -webkit-user-select: none; 
}
textarea
{
    -webkit-user-select: auto !important;
}

он также работает с мобильным jquery.

-webkit-user-select: нет; это помогло мне. Я был полностью потерян в течение нескольких часов, пытаясь изменить параметры поля ввода, больше ничего не работало. (PhoneGap 2.5.0 / Android 4.1.1)

Другие вопросы по тегам