2012-08-16 65 views
0

裏面我發現這非常怪異的情況下使用leaflet.js庫時,我的本地服務器上:傳單加載HTML腳本標籤

代碼:

<!DOCTYPE html> 
<html> 
    <head> 
     <title>map lab</title> 
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 
     <link rel="stylesheet" href="leaflet.css" /> 
     <script src="leaflet.js"></script> 
     <style type='text/css'> 
      #map { height: 256px; } 
     </style> 
    </head> 
    <body> 
     <div id='map'></div> 
     <script type='text/javascript'> 
      var map = new L.map('map').setView([0.0, 0.0], 14); 
      L.tileLayer('http://10.21.142.254/lab/map/{z}/{x}/{y}.png', { 
       maxZoom: 18, 
       attribution: 'Map data &copy; <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); 

     </script> 
    </body> 
</html> 

得很好,但沒有「負荷」。當使用Firebug檢查FF時,我發現整個'html'被插入腳本標記(第7行)。即整個htm和單張代碼都在裏面,控制檯返回(顯然)一個語法錯誤。

從Github下載的單張,並嘗試所有類型的放置在我的目錄結構,但沒有結果。

此外,利用他們的服務器加載單張庫:

<script src="http://cdn.leafletjs.com/leaflet-0.4/leaflet.js"></script> 

偉大的工程至今。

我在想什麼?

回答

0

好的。我的錯。以某種方式設置使用絕對路徑URL而不是相對的鏈接解決了這個問題。

代替:

<link rel="stylesheet" href="leaflet.css" /> <script src="leaflet.js"></script>

使用:

<link rel="stylesheet" href="http://www.domain.com/lab/js/leaflet.css" /> <script src="http://www.domain.com/lab/js/leaflet.js"></script>

THX。