3
我正在开发一个使用webview GUI的android应用程序。我有一个包含页面的元素。它有一个页眉和一个页脚。安卓视图+ jquery
<div data-role="page">
<div data-role="header">
...
</div>
<div data-role="content" id="bg_im">
...
</div>
<div data-role="footer">
...
</div>
</div>
我想插入一个图像作为内容div的背景,使得整个内容不会占用比可用屏幕大小更多的空间。
我有一个JavaScript,做的是:
document.getElementById("bg_im").style.height=Math.floor($(window).height() - $('#home_header').height() - $('#home_footer').height() +"px";
加载页面时执行的功能。
它在桌面浏览器(chrome,mozilla)中都能正常工作,但在android中的webview中加载失败。我发现原因是功能.height()
为页眉和页脚返回值为0.
任何想法为什么?我试过this solution,但它也不起作用。它仍然返回页眉/页脚大小0.
我不认为这是问题所在。它确实返回一个数字,在这种情况下等于$(window).height()。另外,如果我打印出$('#home_header')。height(),它将为footer打印一个0.相同的问题是它不会减去页眉和页脚的大小,因为两个数字都是0,弄清楚为什么。 – Jaka
您是否在$(document).ready({})中调用这些方法;函数(http://api.jquery.com/ready/)?如果文档没有准备好,div高度可能为零。你也可以检查这个问题http://stackoverflow.com/questions/9095967/jquery-height-behaves-differently-in-webkit-and-firefox-when-using-box-sizing – Kyle
是的,该功能在以下方式:$(document).ready(function(){ resizeContent(); $(window).resize(function(){ resizeContent(); }); }); – Jaka