3
リーフレットはレンダリングです。なぜなら、私はDOM内のすべての要素を見ることができるからです。私が見るのはグレーです。リーフレットの地図要素はDOM内にありますが、レンダーしませんか?
マップタイルが表示される唯一の方法は、マップコンテナの絶対位置を削除することです。ただし、マップタイルが混乱することがあります。 GITの歴史をチェックして、誤ってスタイルを変更したかどうかを確認しましたが、運はありません。ここで
は、マップを初期化するコードです:
// init everything on page show
$("#map").live('pageshow',function() {
if(window.localStorage.getItem("lat")!=undefined) { var lat = window.localStorage.getItem("lat")} else { var lat = '49.264'; }
if(window.localStorage.getItem("lng")!=undefined) { var lng = window.localStorage.getItem("lng")} else { var lng = '-123.123'; }
try {
var map = window.map
map = new L.Map('map-container');
var cloudmadeUrl = 'http://{s}.tile.cloudmade.com/006282296d334e66a593e55aca6b5ce0/54803/256/{z}/{x}/{y}.png';
var cloudmadeAttribution = 'Map Data © 2011 OpenStreetMap';
var cloudmade = new L.TileLayer(cloudmadeUrl, {maxZoom: 18, attribution: cloudmadeAttribution});
map.setView(new L.LatLng(lat, lng), 12).addLayer(cloudmade);
map.invalidateSize();
} catch(e) {console.log(e)}
userMarkers[1] = new L.Marker(new L.LatLng(lat,lng) , {icon: new iconUser, clickable: true});
map.addLayer(userMarkers[1]);
});
環境は、jQueryのモバイルを含んでいます。残念ながら、コンソールはエラーをログに記録せず、上のlocalStorageは実際にそれを調べるときに有効なLatLng値を保持しています。
スクリーンショット:
任意の推測?