输入不工作在phonegap应用程序



我正在创建一个Cordova PhoneGap应用程序,输入字段有问题。

我使用isroll来滚动和刷新。

突然我的输入字段没有响应。所以当用户启动应用程序时,他们甚至无法登录。

我使用标准字段,我不能给输入字段焦点。即使在包装器中我设置了"[input].focus()"

html代码

<input class="newinput" onclick="this.focus();" type="email" id="email" name="email" value="" autocorrect="off" autocapitalize="off" required="" placeholder="Enter E-mail address">

CSS

.newinput {
width: 100%;
border: none;
padding: 0;
margin: 3px 0px 1px 0px;
background: white;
font-size: 16px;
color: #43ACDB;
z-index: 40;
}

其他样式是(发现与chrome开发控制台)

-webkit-writing-mode: horizontal-tb;
font: -webkit-small-control;
letter-spacing: normal;
word-spacing: normal;
text-transform: none;
text-indent: 0px;
text-shadow: none;
display: inline-block;
text-align: start;
-webkit-tap-highlight-color: rgba(0,0,0,0);
-webkit-appearance: textfield;
-webkit-rtl-ordering: logical;
-webkit-user-select: text; // tried without this line too
cursor: auto;

输入字段以前工作过,但突然没有一个可以得到关注。不幸的是,当它们停止工作时,我没有,因为我有自动登录,所以我不使用大多数应用程序功能的输入字段。

我已经检查了所有的js和css代码,并没有得到一个单行开始"-webkit-user"(除了调试)

如果我在mac上的浏览器上打开index。html代码可以正常工作但是android模拟器和iphone, android和ipad上的浏览器有这个错误

我还能做些什么来让输入再次工作?

Ok找到答案了。奇怪的是,这是一个自2010年以来一直存在的滚动错误。

使用以下设置:useTransform和onbeforecrollstart。例如

myScroll = new iScroll(
    'wrapper', /** Change this to match your container ID **/
    {
        useTransform: true,
        onBeforeScrollStart: function (e) {
            var target = e.target;
            while (target.nodeType != 1) {
                target = target.parentNode;
            }
            if (target.tagName != 'SELECT' && target.tagName != 'INPUT'
                && target.tagName != 'TEXTAREA'
            ) {
                e.preventDefault();
            }
        }
        /** Add Any Additional Settings here **/
     }
);

相关内容

  • 没有找到相关文章

最新更新