我有一个使用jQuery Mobile和PhoneGap的项目,我在页脚和内容区域有一些问题。
一个基本的jQuery Mobile页面看起来像这样:
<div data-role="page" data-theme="b" id="map">
<div data-role="header" data-theme="b" data-position="inline">
<a href="#" data-rel="back" data-icon="arrow-l">Back</a>
<h1>MAP</h1>
</div><!-- /header -->
<div data-role="content" id="map_canvas">
</div><!-- /content -->
<div data-role="footer" data-theme="d">
<h4>TEST</h4>
</div><!-- /footer -->
</div><!-- /page -->
现在我正在尝试在内容中加载谷歌地图,所以我在JavaScript中使用了以下代码:
$('div').live("pageshow", function()
{
var myOptions = {
center: new google.maps.LatLng(-34.397, 150.644),
zoom: 8,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(document.getElementById("map_canvas"),
myOptions);
}
这是结果:
问题在于,除非您指定属性data-position="fixed"
,否则页脚不会固定在底部,就像这样:
<div data-role="footer" data-theme="d" data-position="fixed">
<h4>TEST</h4>
</div><!-- /footer -->
这样做没问题,但问题是地图在jQuery Mobile将页脚移到底部之前就已经加载了,因此我得到了这个页面:
您可以看到地图仅使用移动到底部之前留下的空间。
我的问题是..我应该等待哪个事件或者需要在我的代码中添加什么,以便加载地图并使用标题和页脚之间的所有空间?