2013-04-22 121 views
0

我想將KML文件加載到我的Openlayers地圖中。我將以下代碼行添加到了我的JS文件中,並引發錯誤。OpenLayers.Layer.GML投擲JS錯誤

var layer = new OpenLayers.Layer.GML("KML", "kml/mykml.kml", {format: OpenLayers.Format.KML}); 

我從here複製它,只是改變了路徑KML文件,以我自己的匹配:在我加入這行我的地圖甚至不會加載。似乎很多人在使用它就好了。我錯過了什麼?

+0

它扔了什麼錯誤? – 2013-04-25 00:05:57

回答

0

GML圖層已被棄用,documentation指出它將在3.0版本中被刪除,而2.12版本沒有用於GML圖層的api文檔,所以它可能在某種程度上被破壞,可能最好使用Protocol.HTTP的Vector層, Strategy.Fixed。

此代碼(從KML例如從字面上看與文件名校正)應該做的工作:

var layer = new OpenLayers.Layer.Vector("KML", { 
    strategies: [new OpenLayers.Strategy.Fixed()], 
    protocol: new OpenLayers.Protocol.HTTP({ 
     url: "kml/mykml.kml", 
     format: new OpenLayers.Format.KML({ 
      extractStyles: true, 
      extractAttributes: true, 
      maxDepth: 2 
     }) 
    }) 
})