2016-12-27 36 views
1

當我試圖加載mapbox Leaflet時,它給出了一個錯誤。L.mapbox未定義

$(document).ready(function(){ 
map = L.mapbox.map('map').addControl(L.mapbox.geocoderControl('mapbox.places', { 
     autocomplete: true 
    })); 
    }); 
<!DOCTYPE html> 
<html> 
<head> 
    <meta charset="utf-8"> 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 
    <%= stylesheet_link_tag 'application', media: 'all' %> 
    <link href="//maxcdn.bootstrapcdn.com/font-awesome/4.1.0/css/font-awesome.min.css" rel="stylesheet"> 
    <link href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap-glyphicons.css" rel="stylesheet"> 
    <link href='https://api.mapbox.com/mapbox.js/v2.4.0/mapbox.css' rel='stylesheet' /> 
    <script src='https://api.mapbox.com/mapbox.js/v2.4.0/mapbox.js'></script> 
</head> 
<body> 
<style> 
.mapboxgl-popup { 
    max-width: 400px; 
    font: 12px/20px 'Helvetica Neue', Arial, Helvetica, sans-serif; 
} 
    </style> 
    <body> 
    <div id='map' style="height: 660px"></div> 
    <%= javascript_include_tag 'application' %> 
<script> 

    </body> 

</html> 

加載文件準備加入mapbox到的ID。有沒有人得到過這個。 當我在瀏覽器控制檯輸入L時,它必須返回像這樣的對象{version:「1.0.2」,Util:Object,Mixin:Object,Browser:Object,DomUtil:Object ...},但它返回_cg {_ff:0 ,位:1,名稱:「L」} 無法找到錯誤。提前致謝。

+0

有一件事你可以做。在頁面中添加jquery腳本,而不是將它放在外面。 – Jai

+0

是Jai,application.js文件包含jquery腳本,它包含在javascript_include_tag中。 –

+0

如果mapbox.js依賴於jquery,那麼你必須將mapbox.js放在jquery下面。 – Jai

回答

0

嘗試鏈接到頭部中的傳單源腳本。