Y at-il un événement javascript déclenché lorsque le clavier à l'écran sur safari mobile ou chrome s'ouvre?

J'essaie de réagir au clavier à l'écran dans nos applications Web. Malheureusement, certaines choses compliquent ceci:

Tout d'abord, l'application doit s'étendre également sur les plates-formes mobiles (tablettes) et les ordinateurs de bureau. De plus, le défilement du document / du corps est interdit et d'épicé encore plus, le mode paysage est obligatoire sur les tablettes.

Donc, si quelqu'un sélectionne un champ de saisie, le clavier à l'écran s'ouvre et bloque la vue sur la moitié de la page, de sorte que certaines entrées deviennent invisibles et j'ai besoin de changer cela.

Malheureusement, il n'y a aucun événement déclenché, ce qui indique que la moitié de l'application est devenue invisible. J'ai déjà vérifié le défilement et le redimensionnement des événements, mais ils n'ont pas non plus déclenché.

Bien sûr, je pourrais toujours réagir d'une façon ou d'une autre dès que je suis sûr d'être sur une tablette. Probablement 95% des utilisateurs ne fixeront pas de clavier matériel de toute façon. Mais n'y a-t-il pas de manière plus propre?

Malheureusement, la réponse ici est claire: NON . Il y a quelques questions connexes avec quelques informations et astuces:

Style d'écran lorsque le clavier virtuel est actif

Application Web iPad: détecte le clavier virtuel en utilisant JavaScript dans Safari?

Android / iPhone webkit, événement déclenché sur le clavier pop?

Avez-vous essayé l'événement de mise au point ?

Ainsi, vous pouvez verrouiller la hauteur min de la forme (ou autre élément parent) avec une classe lorsque le clavier apparaît, et donc l'utilisateur peut faire défiler l'écran tactile lorsqu'une entrée est sélectionnée.

Je cherchais un problème similaire, et cet astuce résout mon cas. =)