Google maps Google地图标记不显示整个xml
我在我的网站上使用谷歌地图API。地图从xml中获取数据,然后使用经度和纬度显示相应位置上的标记。然而,我在xml中有500多个条目,但地图并没有显示所有条目。谁能帮帮我吗。我需要在地图上标记整个xml。地图显示在“”上,地图使用的xml文件为“”。对于谷歌地图,我的代码如下:Google maps Google地图标记不显示整个xml,google-maps,google-maps-markers,Google Maps,Google Maps Markers,我在我的网站上使用谷歌地图API。地图从xml中获取数据,然后使用经度和纬度显示相应位置上的标记。然而,我在xml中有500多个条目,但地图并没有显示所有条目。谁能帮帮我吗。我需要在地图上标记整个xml。地图显示在“”上,地图使用的xml文件为“”。对于谷歌地图,我的代码如下: <script type="text/javascript"> var infowindow; var map; function initialize(str,category,city
<script type="text/javascript">
var infowindow;
var map;
function initialize(str,category,city,minprice,maxprice,flag) {
var myLatlng = new google.maps.LatLng(30.55538, 73.13690);
var myOptions = {
zoom: 5,
center: myLatlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
downloadUrl("<?php echo WEB_PATH;?>test/generate.php", function(data){
var markers = data.documentElement.getElementsByTagName("marker");
for (var i = 0; i < markers.length; i++) {
var latlng = new google.maps.LatLng(parseFloat(markers[i].getAttribute("lat")),
parseFloat(markers[i].getAttribute("lng")));
var marker = createMarker(markers[i].getAttribute("name1"),markers[i].getAttribute("name2"), markers[i].getAttribute("img"), markers[i].getAttribute("description"), markers[i].getAttribute("id"), latlng);
}
});
function createMarker(name1,name2, img, description, id, latlng) {
var marker = new google.maps.Marker({position: latlng, map: map});
google.maps.event.addListener(marker, "click", function() {
if (infowindow) infowindow.close();
infowindow = new google.maps.InfoWindow({content: '<div style="float:left;"><img src="<?php echo WEB_PATH;?>'+img+'" width="75px" height="75px" /></div><div style="float:left; margin-left:10px; font:Arial;"><div style="font-weight:bold;">'+name1+'<br/>'+name2+'</div><div style="width:200px;">'+description+'</div><div><a href="<?php echo WEB_PATH;?>index.php?page=item&id='+id+'">View Product</a></div></div>'});
infowindow.open(map, marker);
});
return marker;
}
</script>
var信息窗口;
var映射;
函数初始化(str、类别、城市、最小价格、最大价格、标志){
var mylatng=new google.maps.LatLng(30.55538,73.13690);
变量myOptions={
缩放:5,
中心:myLatlng,
mapTypeId:google.maps.mapTypeId.ROADMAP
}
map=new google.maps.map(document.getElementById(“map_canvas”),myOptions);
下载URL(“test/generate.php”,函数(数据){
var markers=data.documentElement.getElementsByTagName(“标记”);
对于(var i=0;i '+name1+'
'+name2+'+description+'});
信息窗口。打开(地图、标记);
});
返回标记;
}
您在xml文件中为这么多标记定义了相同的纬度和经度。例如,lat=“33.718151”lng=“73.060547”出现在52个条目中。
您的标记在同一位置时被覆盖。对于同一位置有多个标记的情况,您可以稍微偏移标记(例如0.001度),在距离实际点的半径内。这也会产生良好的视觉效果。您在xml文件中为这么多标记定义了相同的纬度和经度。例如,lat=“33.718151”lng=“73.060547”出现在52个条目中。
您的标记在同一位置时被覆盖。对于同一位置有多个标记的情况,您可以稍微偏移标记(例如0.001度),在实际点的半径内。这也会产生很好的视觉效果。谢谢你给我解决方案。它实际上与你所说的完全一致。标记正在显示,但它们相互重叠,因此只有顶部的标记显示。你能告诉我如何偏移标记,以便kers不会离开他们应该去的区域,同时也不会因为太拥挤而无法在地图上显示。我尝试将它们偏移0.001,但当它们离开实际位置时会出现一个点。因为某些位置有100多个标记。我该怎么办?再次感谢。好的。然后你可以尝试m在信息框中显示多个信息的方法。选中此帖子,伊格纳修斯的回答将解决您的问题!感谢您给我提供解决方案。它实际上与您所说的完全一致。标记正在显示,但它们相互重叠,因此只有顶部的标记显示。您能告诉我如何抵消此错误吗标记,这样标记就不会离开它们应该在的区域,同时也不会太拥挤以至于无法在地图上显示。我尝试将它们偏移0.001,但当它们离开实际位置时会出现一个点。因为某些位置有100多个标记。我该怎么办?再次感谢。好的。然后你可以尝试在信息框中显示多个信息的方法。选中此帖子,伊格纳修斯的回答将解决你的问题!