Ionic-framework: Mettre l'entrée sur le popup

Créé le 18 mars 2014  ·  7Commentaires  ·  Source: ionic-team/ionic-framework

Certaines fenêtres contextuelles doivent d'abord concentrer leurs entrées. Devrait tester cela pour s'assurer que cela fonctionne bien sur iOS cependant.

Commentaire le plus utile

J'ai dû ajouter cette chaîne de modèle à mon invite afin d'avoir l'autofocus

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

Tous les 7 commentaires

Les popups concentrent déjà leurs entrées en premier. Cependant, il y a un bug avec cela. La fenêtre contextuelle se concentre toujours sur le DERNIER élément d'entrée. Il faut vraiment se concentrer sur le premier.

Forum : http://forum.ionicframework.com/t/popup-with-multiple-text-input-fields-always-focuses-on-2nd-input/4956/2
Exemple : http://codepen.io/calendee/pen/duvsl?editors=101

PR à venir dans quelques minutes.

Je trouve que cela fonctionne très bien sur le Web, mais pas sur iOS... le code s'exécute, mais l'entrée ne se concentre pas et le clavier ne s'ouvre pas.

@michaelnatkin : Dans votre config.xml, assurez-vous d'avoir ce paramètre :

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

iOS n'autorisera pas l'ouverture du focus et du clavier à un champ, à moins que cela ne soit défini sur false.

@calendee OMG merci !! Problème résolu. L'équipe Ionic, ce serait bien d'ajouter cette note à la doc ionicPopup.

@calendee Cela fonctionne sur iOS mais cela ne fonctionne pas sur les appareils Android. Ou il y a quelque chose que j'ai oublié ?

@felquis , j'ai eu le même problème. Après avoir examiné ce problème et #1176, j'ai finalement trouvé https://github.com/driftyco/ionic/commit/49a295638d6c60b7e17936cfb345665f6b1954d1 , et j'ai pu corriger mon application en utilisant un modèle avec une entrée autofocus :

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)
   };

J'ai dû ajouter cette chaîne de modèle à mon invite afin d'avoir l'autofocus

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

Cette page vous a été utile?
0 / 5 - 0 notes

Questions connexes

Nick-The-Uncharted picture Nick-The-Uncharted  ·  3Commentaires

manucorporat picture manucorporat  ·  3Commentaires

giammaleoni picture giammaleoni  ·  3Commentaires

masimplo picture masimplo  ·  3Commentaires

danbucholtz picture danbucholtz  ·  3Commentaires