我使用jQuery Mobile构建了一个APP,我使用phoneGap而我的APP是在iframe中构建的,因为我的平台(HP Anywhere)有一个框架。但是jquery mobile会在我的min-height
DIV上添加一个data-role="page"
css属性,比一个设备的最大高度大一个像素,所以它会给我带来一些问题(T_T)。我想知道:jquery mobile什么时候会在页面div上添加这个CSS属性?以及如何避免这种情况?非常感谢。
jQuery Mobile设置了两个事件的页面qazxsw poi,qazxsw poi和qazxsw poi。它为此调用min-height
函数。
要覆盖它,请在pageshow
(pagecontainershow
)上进行更改并稍稍延迟以确保完成throttledresize
。
resetActivePageHeight
我不确定它何时添加它,但我认为解决方案是设置一个值为0的最小高度,因此它不起作用,同时阻止CSS生成它自己的。
我刚刚遇到这个问题并找到了一个简单的解决方案。
它是由JQM计算页面高度引起的,最后得到的答案大于它应该的大小,然后插入内联CSS来强制“页面”的最小高度。当我看到这个时,我从data-role =“page”DIV一直搜索DOM,寻找任何可能影响高度计算的填充或边距设置的元素。
对我来说,解决方案是覆盖BODY标签上用户代理设置的'margin:8px'。将此设置为零使得JQM的高度计算正常工作:垂直滚动条消失,用户在比屏幕短的页面上垂直滚动的能力也消失了。
pagecontainershow
也许它不是你的BODY标签,但是你应该检查层次结构中是否存在可能导致JQM绊倒的任何可疑内容。
对我来说,我删除了通过添加以下css完全添加最小高度。
resetActivePageHeight