我正在寫一個需要地圖的jquery移動應用程序。Google地圖與jquery.mobile:如何正確調整地圖畫布的大小?
對於地圖我計劃使用Google地圖服務。
爲了考慮方向的變化,我試圖用這樣的:
<script>
$('#page-map').live('pagecreate', function(event) {
var map = $('#map_canvas').gmap({
...
});
...
$(window).resize(function() {
$('#map_canvas').width($(window).width());
$('#map_canvas').height($(window).height());
});
)};
</script>
問題:這段代碼正確調整大小時,該設備被旋轉的地圖畫布,但它看起來像jQuery Mobile的調整大小()是跳過(網址欄可見,例如...)。
即使不添加到「調整(函數(){」的代碼是這樣的:
google.maps.event.trigger(map, 'resize');
是任何幫助
更新: 問題只發生在僅移動設備我正在測試我的頁面 - 一個三星Galaxy Mini(GT-S5570),Android 2.3.4(薑餅)。它確實不是發生在桌面PC上調整窗口大小時(即:在桌面瀏覽器map_canvas是正確的當瀏覽器的窗口放大時填充,即使沒有È調整大小()結合,只由於在上map_canvas提供100%的寬度/高度...)
如果當窗口大小發生變化時(例如,因爲設備將方向從縱向更改爲橫向),您不調整#map_canvas的大小,地圖將不會填充地理數據,窗口右側會留下空白條帶... – MarcoS
對不起:您是否使用移動設備?如果是這樣,CSS如果足以讓您在方向更改時填充map_canvas(並且隱藏了url欄)?如果是這樣,我可以問一下我們的設備(iPhone/Blackberry/Android/...)嗎? – MarcoS