2013-07-22 114 views
1

我最近開始使用dojo和osm,所以它可能是一個簡單的問題,但我無法弄清楚爲什麼我會得到這個錯誤。道場的代碼,我必須加載從OSM的地圖如下:爲什麼我在osm中遇到這個錯誤?

function InitMap() { 
    map = L.map('map').setView([ 51.4848, -0.20325 ], 8); 
    var osmUrl = 'http://{s}.tile.cloudmade.com/BC9A493B41014CAABB98F0471D759707/997/256/{z}/{x}/{y}.png'; 
    // 'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png'; 

    L 
      .tileLayer(
        osmUrl, 
        { 
         maxZoom : 18, 
         attribution : 'Map data &copy; <a href="http://openstreetmap.org">OpenStreet1Map</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); 


    var popup = L.popup(); 

    function onMapClick(e) { 
     popup.setLatLng(e.latlng).setContent(
       "You clicked the map at " + e.latlng.toString()).openOn(map); 
    } 
    map.on('click', onMapClick); 
} 

,我在瀏覽器控制檯得到的錯誤是:的ReferenceError:L沒有定義但功能聰明沒有問題。 請讓我知道我在做錯什麼。

+1

是基於一個示例代碼? –

+1

您是否包含leaflet.js? – scai

+0

** javascript **和** java **之間存在巨大差異 – Eonasdan

回答

1

我不是OSM專家,但我想你可能會丟失一個腳本文件。

縱觀源http://www.openstreetmap.org/我看到全局變量L作爲第一個腳本的一部分創建(/assets/application-67bdd93f2bbf379cc96f0e9af383c99c.js

相關問題