我正在使用jquery插件gmap3并且正在使用kmllayer。如何从kml获得标记?我需要按区域过滤标记
答案 0 :(得分:1)
您无法访问KmlLayer中的标记(Google服务器将其渲染为地图图块)。您可以使用FusionTableLayer(您可以将KML导入FusionTable,然后将查询修改为FusionTable以过滤标记)或第三方KML解析器,如geoxml3或geoxml-v3(使用KML渲染KML)原生谷歌地图v3对象)。不确定它们是否适用于gmap3。
答案 1 :(得分:1)
var klms = [{"url":"http:\/\/example.com\/points_in_a_kml_file.kml"}];
if(klms){
$.each(klms, function(i, klms){
$('#map').gmap3({
action: 'addKmlLayer',
url: klms.url,
options:{
suppressInfoWindows: true,
preserveViewport: false
}
})
})
}
“points_in_a_kml_file.kml”:
<?xml version="1.0" encoding="UTF-8"?>
<Document>
<Style id="style0">
<IconStyle scale="0.181818">
<Icon>
<href>http://example.com/pin.png</href>
</Icon>
</IconStyle>
</Style>
<Folder>
<name>pulau_weh_point</name>
<Placemark>
<name>Mama's</name>
<description><![CDATA[Point's description]]></description>
<Point>
<coordinates>95.255227,5.875082,0.000000</coordinates>
</Point>
<styleUrl>#style0</styleUrl>
</Placemark>
</Folder>
</Document>