首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用jQuery手机和Phonegap的Galaxy S2上的键盘输入错误

使用jQuery手机和Phonegap的Galaxy S2上的键盘输入错误
EN

Stack Overflow用户
提问于 2012-02-12 18:32:03
回答 5查看 3.9K关注 0票数 16

我们正在galaxy Mobile1.0.1和jQuery 1.4.1中开发一个移动web应用程序,但在galaxy s2上遇到了键盘问题。

我们有一个滑出的菜单,其中包含一个搜索输入:

代码语言:javascript
复制
<input type="search" placeholder="Search..." name="search" id="menu_search" data-role="none" />

当我们轻敲输入以使其获得焦点时,键盘将打开,但不允许我们键入任何内容。我猜这里的一个线索是它给了我们一个常规的文本键盘,而不是搜索键盘(它有一个放大镜作为enter键)

如果我们在菜单打开时聚焦输入:$("#menu_search").focus() -当菜单显示时,搜索键盘是打开的,我们可以搜索,但一旦我们轻敲输入,键盘就会变成常规键盘,我们无法键入任何内容。

另一个线索是,当在键盘上打字时,自动预测是有效的,但当点击正确的选项时,只会在输入中添加一个空格,而其他字符都不会添加。

我们已经在搜索输入上尝试了许多其他属性,但都无济于事:

代码语言:javascript
复制
<input type="search" placeholder="Search..." name="search" id="menu_search" value="" data-role="none" autocomplete="off" autocorrect="off" autocapitalization="off" role="textbox" aria-autocomplete="list" aria-haspopup="true" style="-webkit-appearance:searchfield;" class="ui-autocomplete-input" />

这一切在运行2.2的HTC Desire和运行CM7 (Android 2.3.7)的desire上都运行得很好。

我们甚至尝试将输入更改为文本区域,但这做了几乎相同的事情:(

我也试过了:

代码语言:javascript
复制
$("#menu_search").live('focus',function(event){
   event.preventDefault();
});

看看这是否会阻止它更换键盘,但也不走运。

然而,我们确实在应用程序中的其他地方有另一个搜索输入,它工作得很好,唯一的区别是另一个搜索是在一个“合适的”页面中:data-role="page",菜单在所有其他页面之外,并且在它自己的初始设置为隐藏。

请帮帮忙,我在哭血自动取款机!

EN

回答 5

Stack Overflow用户

发布于 2012-04-16 15:42:31

你可能有过

代码语言:javascript
复制
-webkit-user-select: none;

在你的CSS中的某处。如果您为输入启用文本选择

代码语言:javascript
复制
input, textarea { -webkit-user-select: text; }

它又能工作了!

票数 2
EN

Stack Overflow用户

发布于 2012-03-12 15:26:57

您是否尝试将data-native-menu="false“属性添加到搜索输入标记中。

票数 0
EN

Stack Overflow用户

发布于 2012-08-09 04:53:14

如果你仍然坚持这一点,试着更新到phonegap 2.0。它修复了一些输入问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9248109

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档