您好我正在做一个带有ajax加载我的子页面的phonegap应用程序,其中一个我正在尝试加载传单地图。 它不是渲染瓷砖? 我不知道我错过了什么?
我在我的索引文件和我应该显示地图的子页面中加载传单css和js文件我有以下代码:
<div id="themappage">
<div id="header" class="toolbar">
<h1>The Map</h1>
<a href="#" class="back">BACK</a>
</div>
<div id="map"></div>
<script>
$(document).ready(function(){
var map = L.map('map');
L.tileLayer('http://{s}.tile.cloudmade.com/42dfb943872a465d89807eb88f6a1f4d/997@2x/256/{z}/{x}/{y}.png', {
maxZoom: 18,
attribution: 'Map data © <a href="http://openstreetmap.org">OpenStreetMap</a> contributors, <a href="http://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>, Imagery © <a href="http://cloudmade.com">CloudMade</a>'
}).addTo(map);
function onLocationFound(e) {
var radius = e.accuracy / 2;
L.marker(e.latlng).addTo(map)
.bindPopup("You are within " + radius + " meters from this point").openPopup();
L.circle(e.latlng, radius).addTo(map);
}
function onLocationError(e) {
alert(e.message);
}
map.on('locationfound', onLocationFound);
map.on('locationerror', onLocationError);
map.locate({setView: true, maxZoom: 16});
});
</script>
</div>
感谢任何意见,谢谢。
更新! 刚刚发现我是否使用http:// {s} .tile.osm.org / {z} / {x} / {y} .png而不是http:// {s} .tile.cloudmade.com / 42dfb943872a465d89807eb88f6a1f4d /997/256/{z}/{x}/{y}.png作为图块层,然后渲染图块,为什么cloudemade的图块不会渲染?
答案 0 :(得分:1)
当我尝试加载它时,我使用该API-Key收到了403(Forbidden)错误。尝试获得另一个(you did request your own right?)。 OSM工作的原因是它不需要API密钥。
API-Key是以42dfb开头的url的一部分...并转到/。用一把好钥匙代替它,你应该好好去。