[英]Phonegap css height % not working in android 4.2 - 4.3
我總是使用android 5.0手機和android 4.4手機來測試我的應用程序。 他們總是工作。 昨天,我找到了一個Android 4.3手機,並用它測試了我的應用程序。 它們無法正常工作-高度(%)。 然后,我在android 4.2手機中做了同樣的事情,以確定它是否可以工作。 但是是一樣的 我該怎么解決?
我也遇到了這個問題,直到頁面實際顯示在屏幕上之前,頁面的大小及其內容才知道。
因此,我要做的是使用觸發器自定義事件(與jquery一起使用): http : //api.jquery.com/trigger/ 。
我將規則與JS中的自定義事件綁定在一起(例如,使用屏幕的標准尺寸):
$('body').on('custom_event:elements_loaded',{'fsContainer':fsContainer,'elementToCenter':elementToCenter,'zoneToCenterElementIn':zoneToCenterElementIn},function(event){
fsContainerHeight = ViewManagementTools.getValueFromPixelSizeString($('#'+event.data.fsContainer).css('height'));
elementToCenterHeight = ViewManagementTools.getValueFromPixelSizeString($('#'+event.data.elementToCenter).css('line-height'));
ztceiChild = $('body').find('[id='+event.data.zoneToCenterElementIn +'] div');
zoneToCenterElementInHeight = ViewManagementTools.getValueFromPixelSizeString($(ztceiChild).css('height'));
marginToApply = (zoneToCenterElementInHeight - elementToCenterHeight)/2;
$('#'+event.data.zoneToCenterElementIn).parent().css('height',zoneToCenterElementInHeight+'px');
$('#'+event.data.elementToCenter).css('margin-top',marginToApply+'px');
$('#'+event.data.elementToCenter).css('height',elementToCenterHeight);
if(fsContainerHeight<=elementToCenterHeight){
$('#'+event.data.fsContainer).css('height',elementToCenterHeight + 2*marginToApply);
} else {
marginToApply = (fsContainerHeight - elementToCenterHeight)/2;
$('#'+event.data.elementToCenter).css('margin-top',marginToApply+'px');
}
});
然后,當頁面顯示時,或者甚至在設備就緒時,如果您使用標准的屏幕大小來布局內容,則可以觸發事件:
$('body').trigger('custom_event:elements_loaded');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.