2

リーフレットマップをPhoneGapアプリで動作させようとしていますが、マップが全画面表示されないため、理由がわかりません。

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: '&copy; <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/

(評判の良い画像を投稿させてくれません)

アップデート

アプリを横向きにすると地図が読み込まれますが、縦向きのままにすると地図は灰色になります

4

1 に答える 1

2

map.invalidateSize();地図を表示してからお試しください。

于 2013-02-19T14:39:18.947 に答える