作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要将自定义 kml 文件加载到 Google map 中,相应资源的代码几乎没有变化:
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>
然而,虽然 map 显示得很好,但没有加载任何图标,相反我只获得了默认的 Google map 图标。对此的任何帮助将不胜感激,因为我的 JavaScript 知识非常有限,而且我觉得我正处于一个更令人头疼的地步,我无处可去......
干杯:)
最佳答案
grigno 提供的答案对我来说效果很好,但是 KML 文件中的所有标记都必须具有这样的样式,或者检查 placemark.style.icon 是否在 passign 之前未定义功能:
<Document>
<name>myKml.kml</name>
<Style id="My_Style">
<IconStyle>
<Icon>
<href>office-building.png</href>
</Icon>
</IconStyle>
</Style>
在地标部分:
<Placemark>
<name><![CDATA[iMEX0011]]></name>
<description><![CDATA[MARKER TITLE]]></description>
<styleUrl>#My_Style</styleUrl>
<Point>
<coordinates>-99.2232472,25.4413972,0</coordinates>
</Point>
</Placemark>
关于javascript - geoxml3:如何加载自定义图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7961240/
需要一张葡萄牙 map ,用户可以在点击时选择地区,我关注了this example和 this one .问题是我为每个要绘制为多边形的地区使用 KML 文件,而不是为所有地区多边形使用 KML。
旧帖子 How can I use parse and parseKmlString together?? I need show a map loading one KML file (I use
我是一名优秀的程序员,十分优秀!