在Cordova网络应用程序中关注输入

时间:2015-06-29 23:17:43

标签: javascript angularjs cordova

早些时候提出了一个问题。尝试了一种新的方法,仍然没有用。我有一个删除<p>元素的按钮,并将其替换为具有相同内容的<textarea>,但可以编辑。我需要将焦点转移到<textarea>,但不能在设备上,仅在浏览器上。我已将已请求的<preference name="KeyboardDisplayRequiersUserAction" value="false"/>属性添加到config.xml

HTML:

<div ng-click="edit()">
  Click here to edit
</div>

<div ng-if="!post.typing" class="post-text">
  <p>{{post.post_text}}</p>
</div>

<div ng-if="post.typing" class="post-text">
  <form ng-submit="submit()">
    <textarea id="text"  ng-keyup="$event.keyCode == 13 && submit()" style="width:100%" ng-model="post.post_text"></textarea>
    <input type="submit" style="position: absolute; left: -9999px; width: 1px; height: 1px;"/>
  </form>
</div>

JS:

$scope.edit = function() {
  $scope.post.typing = true;
  $timeout(function () {
    document.getElementById("text").focus();
  }, 100);
}

1 个答案:

答案 0 :(得分:2)

我在你的评论中注意到你包括:

<preference name="KeyboardDisplayRequiersUserAction" value="false"/>
在config.xml中

。需求中存在拼写错误 - 这可能是您的问题!