我在制作加载具有地址而不是latlng的XML文件的Google地图时遇到了一些问题。 XML文件包含大约10条记录。 我无法弄清楚如何做到这一点。
$(document).ready(function(){
var refreshId = setInterval(function(){
var latlng = new google.maps.LatLng(18.156291402835436, 22.2802734375);
var myOptions = {
zoom: 3,
center: latlng,
mapTypeId: google.maps.MapTypeId.TERRAIN
};
var map = new google.maps.Map(document.getElementById("map_canvas"),myOptions);
var georssLayer = new google.maps.KmlLayer("data.xml");
var geocoder = new google.maps.Geocoder();
//????
georssLayer.setMap(map);
}, 10000);
});
<div id="map_canvas" style="width:99%; height:99%"></div>
帮助PLZ
答案 0 :(得分:1)
2天后确定我的解决方案:
使用ajax加载XML并循环文档以获取地址,然后在
之后map = new google.maps.Map()
地址是来自xml的地址,应该有街道,城市,国家
geocoder.geocode({ 'address': address }, function (results, status) {
if (status == google.maps.GeocoderStatus.OK) {
//Make the latitude*longitude format
var latlng = new google.maps.LatLng(results[0].geometry.location.lat(), results[0].geometry.location.lng());
//Show me the money!!!
var marker = new google.maps.Marker({
map: map,
position: latlng,
title: address
});
google.maps.event.addListener(marker, 'click', function() {
infowindow.setContent(html);
infowindow.open(map,marker);
});
google.maps.event.trigger(marker, 'click');
}
});