Phonegap css height%不适用于android 4.2-4.3

Phonegap css height % not working in android 4.2 - 4.3

本文关键字:android 适用于 css height% 不适用 Phonegap      更新时间:2023-09-26

我总是使用安卓5.0手机和安卓4.4手机来测试我的应用程序。他们总是工作。昨天,我发现了一部android 4.3手机,并用它测试了我的应用程序。它们不能正常工作-高度(%)。然后我在安卓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');