Google maps 使用KML文件时如何显示信息框

Google maps 使用KML文件时如何显示信息框,google-maps,google-geocoder,infobox,Google Maps,Google Geocoder,Infobox,函数initMap(){ var Mylatng={lat:19.0760,lng:72.8777}; var map=new google.maps.map(document.getElementById('map-canvas'),{ 中心:新google.maps.LatLng(22.491378.9000), 缩放:5, mapTypeId:google.maps.mapTypeId.ROADMAP, disableDefaultUI:true, }); var geo

函数initMap(){
var Mylatng={lat:19.0760,lng:72.8777};
var map=new google.maps.map(document.getElementById('map-canvas'),{
中心:新google.maps.LatLng(22.491378.9000),
缩放:5,
mapTypeId:google.maps.mapTypeId.ROADMAP,
disableDefaultUI:true,
});         
var geocoder=new google.maps.geocoder();
var geoXml=new geoXML3.parser({
地图:地图,
zoom:错,
suppressInfoWindows:对,
保存视口:true
});
parse('India_KML.KML');
var json=[
{
“名称”:“在喀拉拉邦划皮划艇”,
“lat”:11.372230617418888,
“液化天然气”:76.00253776872557,
“地点”:“印度泰米尔纳德邦”,
“运动”:“皮划艇”,
“供应商”:“Goodwave Adventure”,
“价格”:“2000”,
“图像”:http://advensure.dev/img/vendors/MG_3438.jpg",
“url”:”http://advensure.dev/",
“描述”:“斯德哥尔摩是瑞典的首都和最大城市,是斯堪的纳维亚半岛人口最多的城市区,大都市区人口210万(2010年)”
},
{
“名称”:“卡弗里河上的野水皮划艇”,
“lat”:12.372230617418888,
“液化天然气”:78.00253776872557,
“地点”:“印度喀拉拉邦”,
“运动”:“皮划艇”,
“供应商”:“Goodwave Adventure”,
“价格”:“2000”,
“图像”:http://advensure.dev/img/vendors/MG_3438-500x333.jpg",
“url”:”http://advensure.dev/",
“描述”:“奥斯陆是一个直辖市,是挪威首都和人口最多的城市,大都市人口为1442318人(截至2010年)。”
},
{
“名称”:“喀拉拉2号皮划艇”,
“lat”:11.372230617418888,
“液化天然气”:75.00253776872557,
“地点”:“印度喀拉拉邦”,
“运动”:“皮划艇”,
“供应商”:“Goodwave Adventure”,
“价格”:“3000”,
“图像”:http://advensure.dev/img/vendors/MG_3438.jpg",
“url”:”http://advensure.dev/",
“描述”:“哥本哈根是丹麦首都和人口最多的城市,大都市人口1931467人(截至2012年1月1日)。”
}
]   
变量图标={
url:“/img/marker/location pointer.png”,//url
scaledSize:new google.maps.Size(40,40),//缩放大小
原点:新的google.maps.Point(0,0),//原点
锚点:新的google.maps.Point(0,0)//锚点
};
var信息盒;
var boxOptions={
是的,
是的,
箱式:{
空白:“包装”,
宽度:“420px”,
填充:“5px”,
背景颜色:“白色”
},
closeBoxURL:“”,
maxWidth:0,//没有最大值
窗格:“浮动窗格”,
pixelOffset:new google.maps.Size(-95,-10),
infoBoxClearance:new google.maps.Size(1,1),
上下文菜单:true
};    
var ibContent='';
for(var i=0,length=json.length;i”+
'' +
'' +
'' +
'' +
'';   
google.maps.event.addListener(标记,“单击”)(函数(标记,数据){
返回函数(e){
infoBox.setContent(ibContent);
打开(地图、标记);
}
})(标记、数据);
}    
google.maps.event.addDomListener(窗口,“调整大小”,函数(){
var center=map.getCenter();
google.maps.event.trigger(map,“resize”);
地图设置中心(中心);
});          
}
google.maps.event.addDomListener(窗口'load',initMap)
#地图画布{
身高:100%;
宽度:100%;
位置:绝对位置;
排名:0;
左:0;
z指数:0;
/*变焦:0.8*/
}

这与您的KML掩码无关。 您有一个CSS设置正在破坏标记单击侦听器(
zoom:0.8
),删除该设置后,信息框将在单击时显示(尽管它们存在内容和格式问题)

您还需要在marker click事件函数中关闭函数(或者仅在最后一个标记上获得信息框):

工作代码段(不带掩码):

函数initMap(){
var mylatng={
纬度:19.0760,
液化天然气:72.8777
};
var map=new google.maps.map(document.getElementById('map-canvas'){
中心:新google.maps.LatLng(22.491378.9000),
缩放:5,
mapTypeId:google.maps。
    google.maps.event.addListener(marker, "click", (function(marker,data) {
      return function(e) {
        infoBox.setContent(data.description);
        infoBox.open(map, marker);
    }})(marker, data));