javascript Входное поле iOS 7.1, расположенное под виртуальной клавиатурой, увеличивает масштаб фокуса



ionic cordova (2)

Редактировать: Ionic исправил это в бета-версии 4, поэтому эти хакерские исправления не должны быть нужны :) Большой до Ионной команды для распознавания проблемы и ее исправления!

То, что я собираюсь сейчас, похоже на ответ @ajsnaps выше . Я не считаю это хорошим решением, потому что у него есть ошибки (похожие на те, которые указаны в другом потоке).

Я попытаюсь обновить это с чем-то лучшим, когда я это выясню, и я оставлю это открытым, если кто-то придет с лучшим решением.

$("input").on('focus',function(){ 

 //set brief timeout to let window catch up
 setTimeout(function(){

 //pull down the message area (scrollPane) and header (titleBar)
 //works on both 3.5" and 4" screens
 $("titleBar").css('top', '215px');
 $("scrollPane").css('top', '273px');

 },20); 

});

$("input").on('blur',function(){

 //set brief timeout to let window catch up
 setTimeout(function(){

 //push the top back up
 $("titleBar").css('top', '0px');
 $("scrollPane").css('top', '56px');

 },20); 

});

Кроме того, я убедился, что заголовок сбрасывается после перехода из режима чата.

Надеюсь это поможет!

https://ffff65535.com

Я пишу чат-приложение с помощью Кордовы, и в окне чата есть поле ввода, подобное iMessage, в нижней части страницы. В iOS 7.0 щелчок по полю изменил размер окна и поднял поле ввода над клавиатурой. В iOS 7.1 нажатие на поле ввода просто вытолкнуло все снизу и не изменяет размер окна.

У моего окна просмотра установлено:

<meta name="viewport" content="user-scalable=no, initial-scale=1, minimum-scale=1, maximum-scale=1, target-densitydpi=device-dpi" />
  • При позиционировании ввода относительно вершины, изменение размера не происходит. Однако позиционирование входного сигнала достаточно низко, чтобы соответствовать верхней части клавиатуры, приводит к ошибке без изменения размера. Это можно воспроизвести, создав демо-версию ионического матового стекла и изменив нижний колонтитул

    <footer class="bar bar-footer bar-frosted"><button class="button button-clear button-positive" ng-click="add()">Add Message</button></footer>

    в

    <footer class="bar bar-footer bar-frosted"><input name="testInput"></footer>

    В www / index.html

Это повторяет ошибку в iOS7.1 и работает как ожидается в iOS 7.0.x. Я следил за предложениями здесь , но они нити датированы и не закончили работать. Заранее благодарю за понимание!


Уу попробовал установить ширину явно? Как упоминалось здесь ?

<meta name="viewport" content="width=device-width">




ionic-framework