Ionic-framework: 在弹出窗口中聚焦输入

创建于 2014-03-18  ·  7评论  ·  资料来源: ionic-team/ionic-framework

一些弹出窗口应该首先关注他们的输入。 应该对此进行测试以确保它在 iOS 上运行良好。

最有用的评论

我必须将此模板字符串添加到我的提示中才能自动对焦

template: '<input ng-model="data.response" type="text" placeholder="{{ placeHolder }}" autofocus>'

所有7条评论

弹出窗口已经首先关注他们的输入。 但是,这有一个错误。 弹出窗口始终关注最后一个输入元素。 它应该真正关注第一个。

论坛: http :
示例: http :

几分钟后公关。

我发现这在网络上效果很好,但在 iOS 上效果不佳......代码运行,但输入不聚焦,键盘也没有打开。

@michaelnatkin :在你的 config.xml 中,确保你有这个设置:

<preference name="KeyboardDisplayRequiresUserAction" value="false" />

除非将其设置为 false,否则 iOS 将不允许字段获得焦点并打开键盘。

@calendee OMG 谢谢!! 问题解决了。 Ionic 团队最好将该注释添加到 ionicPopup 文档中。

@calendee它适用于 iOS,但不适用于 Android 设备。 或者有什么我忘记了?

@felquis ,我遇到了同样的问题。 在查看此问题和 #1176 后,我最终找到了https://github.com/driftyco/ionic/commit/49a295638d6c60b7e17936cfb345665f6b1954d1 ,并且我能够通过使用具有自动聚焦输入的模板来修复我的应用程序:

diff --git a/www/js/app.js b/www/js/app.js
index 8e7afcd..1131dfb 100644
--- a/www/js/app.js
+++ b/www/js/app.js
@@ -57,6 +57,7 @@ angular.module('todo', ['ionic'])
   $scope.newProject = function() {
     $ionicPopup.prompt({
       title: 'Project name',
+      template: '<input autofocus>'
     })
     .then(createProject)
   };

我必须将此模板字符串添加到我的提示中才能自动对焦

template: '<input ng-model="data.response" type="text" placeholder="{{ placeHolder }}" autofocus>'

此页面是否有帮助?
0 / 5 - 0 等级