我正在尝试使用PhoneGap应用程序使用Leaflet地图,并且地图将无法全屏显示,并且不确定原因。
的index.html
<div data-role="content" id="map" style="width:100%;height:70%;position:absolute;">
var map = new Map();
var $map = $('#map');
$map.height( $(window).height() - $map.offset().top );
maps.js
function Map() {
var map = L.map('map').setView([51.505, -0.09], 13);
L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png', {
attribution: '© <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'
}).addTo(map);
L.marker([51.5, -0.09]).addTo(map)
.bindPopup('A pretty CSS3 popup. <br> Easily customizable.')
.openPopup();
}
但是我一直在地图偏离最右边的地方,并且不会在其他任何地方加载:
http://postimage.org/image/r0e49wgt5/
(不要让我发布有声誉的图片)
更新
如果我打开应用程序横向,地图将加载,但如果我留在纵向,则地图将为灰色
答案 0 :(得分:2)
显示地图后尝试map.invalidateSize();
。