【问题标题】:Can't edit input type="text" or textarea with Cordova 1.9.0 and Android Jelly Bean无法使用 Cordova 1.9.0 和 Android Jelly Bean 编辑 input type="text" 或 textarea
【发布时间】:2012-07-19 01:47:07
【问题描述】:

我刚拿到闪亮的新 Nexus 7,正在玩 Cordova (Phonegap)。我创建了一个带有几个文本输入字段和一个文本区域的简单页面。在我的 iPhone 上,我可以单击文本字段,然后键盘会出现,我可以编辑文本。在我运行 4.1.1 Jelly Bean 和 Cordova 1.9.0 的 Nexus 7 上,键盘会出现,但是当您键入时,文本字段或文本区域中没有显示任何内容。

我很确定我的代码没问题,因为它可以在 iPhone 和 Android 2.3.5 上运行,但这里是有问题的 sn-p,以防万一:

  <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 上尝试过,效果很好。有没有人遇到过类似的情况?

【问题讨论】:

    标签: android cordova


    【解决方案1】:

    Phonegap 刚刚发布了 2.0。它已经解决了键盘的问题。

    【讨论】:

    • 谢谢,我可以确认升级到 Cordova 2.0 修复了运行 4.1.1 Jellybean 的 Nexus 7 上的文本输入问题。
    • 他们有没有碰巧说为什么它在 Nexus 7 上会这样?我遇到了类似的情况,在我的活动中通过 web 视图输入 textarea 会导致我的应用程序的搜索栏填充用于 textarea 的文本。
    【解决方案2】:

    该问题在 2.1.0 中也仍然存在。

    这是我修复它的方法。

    去掉下面的CSS规则,你就可以愉快的在输入元素中打字了。

    -webkit-user-select: none;
    

    【讨论】:

    • 谢谢 - 这应该被接受。快把我逼疯了!
    • 我应该在哪里搜索这条线?
    • 它会在你 phonegap 的 www/index.css 文件中像这样 * { -webkit-user-select: none; }
    • 我没有接受这个答案,因为从 Cordova 1.9.0 升级到 2.0 为我解决了最初的问题,这是接受的答案所建议的 - 但也许这取决于您使用的设备。
    • 我找不到这个文件..请帮忙
    【解决方案3】:

    -webkit-user-select:无; 这对我有用。我完全迷失了几个小时尝试输入字段参数的变化,没有其他工作。 (phonegap 2.5.0 / 安卓 4.1.1)

    【讨论】:

      【解决方案4】:

      我也必须将我的应用程序与浏览器一起使用,并且存在同样的问题。只能在 textarea 上解决这个问题:

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

      它也适用于 jquery mobile。

      【讨论】:

        猜你喜欢
        • 2010-09-20
        • 1970-01-01
        • 2013-04-02
        • 2015-01-18
        • 2013-07-07
        • 1970-01-01
        • 2017-08-04
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多