我需要将自定义 kml 文件加载到谷歌地图中,代码与相应的资源几乎没有变化:
function initialize() {
var myLatlng = new google.maps.LatLng(39.397, -100.644);
var myOptions = {
zoom: 5,
center: myLatlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById('map_canvas'), myOptions);
var geoXml = new geoXML3.parser({map: map, processStyles: true});
geoXml.parse('test.kml');
};
.kml 直接来自谷歌地图,有一堆标记,都带有自定义图标,例如:
<Style id="sn_1">
<IconStyle>
<scale>1.1</scale>
<Icon>
<href>http://maps.google.com/mapfiles/kml/paddle/Z.png</href>
</Icon>
<hotSpot x="32" y="1" xunits="pixels" yunits="pixels"/>
</IconStyle>
<ListStyle>
<ItemIcon>
<href>http://maps.google.com/mapfiles/kml/paddle/Z-lv.png</href>
</ItemIcon>
</ListStyle>
</Style>
其他图标被定义为(现有的)本地路径,例如:
<Icon>
<href>img/marker/5.png</href>
</Icon>
然而,虽然地图显示得很好,但没有加载任何图标,相反,我只获得了默认的谷歌地图图标。对此的任何帮助将不胜感激,因为我的 JavaScript 知识非常有限,而且我觉得我正处于这样一个时刻,更多的抓挠不会让我到任何地方......
干杯:)