Google maps api 3 谷歌地图v3中的多标记信息窗口
我已经测试了大约1个小时了。但由于某些原因,我无法为每个标记显示另一个infowindow文本。 单击其中的每一个,将打开一个新的信息窗口(旧窗口将关闭,这很好),但窗口内的文本始终是我在最后一个标记中设置的文本:Google maps api 3 谷歌地图v3中的多标记信息窗口,google-maps-api-3,google-maps-markers,infowindow,Google Maps Api 3,Google Maps Markers,Infowindow,我已经测试了大约1个小时了。但由于某些原因,我无法为每个标记显示另一个infowindow文本。 单击其中的每一个,将打开一个新的信息窗口(旧窗口将关闭,这很好),但窗口内的文本始终是我在最后一个标记中设置的文本: 函数初始化(){ var center=new google.maps.LatLng(51.13333,10.416667); var map=new google.maps.map(document.getElementById('map'){ 缩放:6, 中心:中心,, mapT
函数初始化(){
var center=new google.maps.LatLng(51.13333,10.416667);
var map=new google.maps.map(document.getElementById('map'){
缩放:6,
中心:中心,,
mapTypeId:google.maps.mapTypeId.ROADMAP
});
var标记=[];
for(var i=0,dataPhoto;dataPhoto=data.photos[i];i++){
var latLng=新的google.maps.latLng(dataPhoto.latitude,
经度);
var marker=new google.maps.marker({
位置:latLng,
标题:dataPhoto.infotitle,
地图:地图,
});
/*创建信息窗口*/
var infowindow=new google.maps.infowindow({
内容:“”
});
google.maps.event.addListener(标记'click',函数(){
infowindow.setContent(“”+marker.title+“”+Infotext');
打开(地图,这个);
});
标记器。推(标记器);
}
var markerCluster=新的MarkerClusterer(地图、标记);
}
我在这里看到了一些解决方案,但似乎没有一个对我有效。
我真的很感激你的帮助
请参阅。您只需将内容设置为this.title,而不是marker.title
infowindow.setContent(“”+this.title+“”+Infotext');
谢谢
dz46您无法存储信息窗口。。看看我的代码,我使用infoBubble库,但它应该非常类似。这可能比您需要的代码更多,但越多越好
/**
*信息气泡变量
*此变量是为加载的默认值全局定义的。
*/
var-infoBubbles=[];
/**
*地图上所有标记的数组
*
*@type{Array}
*@作者迈克·德维塔
*@版权所有2011 MapIT USA
*@category map_Js
*/
var-markersArray=[];
/**
*地图上所有标记的所有侧栏项的数组
*
*@type{Array}
*@作者迈克·德维塔
*@版权所有2011 MapIT USA
*@category map_Js
*/
var sidebarHtmlArray=[];
/**
*设定点(位置)
*
*根据位置设置标记、信息气泡和sidebarItem
*从JSON查询返回的。
*
*@param{array}所有点的位置数组及其设置/html
*
*@作者迈克·德维塔
*@author谷歌地图API
*@版权所有2011 MapIT USA
*@category map_js
*/
功能设定点(位置){
对于(变量i=0;i
将代码更改为
var markers = new Array();
var infowindow = new Array();
var map;
function initialize() {
var center = new google.maps.LatLng(51.133333,10.416667);
map = new google.maps.Map(document.getElementById('map'), {
zoom: 6,
center: center,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
for (var i = 0, dataPhoto; dataPhoto = data.photos[i]; i++) {
var latLng = new google.maps.LatLng(dataPhoto.latitude,
dataPhoto.longitude);
markers[i] = new google.maps.Marker({
position: latLng,
title: dataPhoto.infotitle,
map: map,
});
/* Create Info Windows */
infowindow[i] = new google.maps.InfoWindow({
content: " "
});
google.maps.event.addListener(markers[i], 'click', function() {
infowindow[i].setContent('<h3>'+this.title+'</h3>'+' Infotext');
infowindow[i].open(map, this);
});
}
var markerCluster = new MarkerClusterer(map, markers);
}
var markers=new Array();
var infowindow=新数组();
var映射;
函数初始化(){
var center=new google.maps.LatLng(51.13333,10.416667);
map=new google.maps.map(document.getElementById('map'){
缩放:6,
中心:中心,,
mapTypeId:google.maps.mapTypeId.ROADMAP
});
for(var i=0,dataPhoto;dataPhoto=data.photos[i];i++){
var latLng=新的google.maps.latLng(dataPhoto.latitude,