2013-08-29 2 views
5

У меня возникла странная проблема на устройстве GS4 при использовании PhoneGap, когда некоторые из моих элементов моего веб-приложения не отображаются должным образом, когда страница отображается, но как только эта страница нажата или нажата , расположение элементов правильно. Медленно мерцающее белое окно накапливалось, прежде чем переводить события в мое приложение.PhoneGap и Galaxy s4 render issue

Проблема только начисляется на GS4 и никогда не начисляется, когда я пытаюсь использовать ее на других телефонах, таких как GS4, Note или IPhone.

+0

Я также испытываю эту проблему. Некоторые ссылки, которые я нашел полезными, но все еще не решение. https://github.com/jaunesarmiento/fries/issues/31 https://groups.google.com/forum/#!topic/phonegap/NS4-SezuxH8 – Llewellyn1411

ответ

5

Являются ли эти элементы динамически генерируемыми? У меня тоже была такая же проблема, я понял, ей действительно нужно некоторое аппаратное ускорение (ускорение GPU). Мы должны включить 3d-рендеринг css. Просто используйте

transform: translateZ(0); 

для данного элемента. Это сработало для меня, попробуйте, может сработать для вас.

Пожалуйста, проверьте этот link

1

пытается манипулировать с другими элементами, как:

$('#footer').fadeTo(1,0.99,function(){ 
    $('#footer').fadeTo(1,1); 
}); 
+0

Если вы пытаетесь заставить перерисовать, есть более эффективные способы Делать это. Как запрос ширины элементов. Хотя это не решит эту проблему. – Llewellyn1411

2

проблема в коротком: андроиде. В зависимости от того, какая версия GS4 работает, веб-браузер действует по-разному и несет разные проблемы. IE я сделал приложение phonegap, которое отлично работало, а затем не работает во всем в желе. Само собой разумеется, что я теперь родной. Тем не менее, используйте преобразования и 3d-преобразования в ваших элементах, которые заставляют все элементы перерисовываться с аппаратным ускорением и заставляют перерисовывать элементы, если они динамически вставляются в DOM

1

У меня была аналогичная проблема с галактикой trend (android 4.0.4): некоторые изменения на странице отображались неправильно (перерисовка некоторых элементов, скрытие/показ других) до тех пор, пока я не коснусь экрана, тогда как он отлично работает на любых других устройствах, которые я тестировал (от android 2.3 до 4.4).

Я проверил множество исправлений, найденных в переполнении стека, и в других местах: добавьте transcate3d в css, ширина элементов запроса ... ничего не повлияло;

Это только когда я добавил $myPage.find("[data-role=footer]").hide(0).show(0);, что моя страница, наконец, правильно отображена на тренде галактики.

В моем случае я думаю, что это работает, потому что оно заставляет перерисовать нижний колонтитул, а элементы, которые я скрываю/показываю, находятся в нижнем колонтитуле.

Может быть, принудительное скрытие/шоу на другом элементе может помочь в вашем случае?

Смежные вопросы