Javascript 谷歌地图中的信息窗口在相关点未显示
Infowindow并没有显示在google地图的适当位置,所有Infowindow都显示在同一点上 我从数据库中动态获取记录,并在一张地图上显示多个标记Javascript 谷歌地图中的信息窗口在相关点未显示,javascript,google-maps,infowindow,Javascript,Google Maps,Infowindow,Infowindow并没有显示在google地图的适当位置,所有Infowindow都显示在同一点上 我从数据库中动态获取记录,并在一张地图上显示多个标记 <script language="javascript" src="http://google-maps-utility-library-v3.googlecode.com/svn/tags/markerwithlabel/1.1.8/src/markerwithlabel.js"></script> <
<script language="javascript" src="http://google-maps-utility-library-v3.googlecode.com/svn/tags/markerwithlabel/1.1.8/src/markerwithlabel.js"></script>
<script type="text/javascript">
var markers = [
['<div style="float:left;"><span style="float:left; margin-right:5px;"><a href="property-detail.php?ml_num=2620768"><img src="cropImage.php?image=http://links.mlslirealtor.com/mlsphotos/full/1/768/2620768.jpg&w=40&h=40" width="40" height="40" border="0" ></a></span><span style="float:left; text-align:center;">22-13 Steinway St<br>NY, 11103</span></div>', 40.772327, -73.906257],['<div style="float:left;"><span style="float:left; margin-right:5px;"><a href="property-detail.php?ml_num=2618343"><img src="cropImage.php?image=http://links.mlslirealtor.com/mlsphotos/full/1/343/2618343.jpg&w=40&h=40" width="40" height="40" border="0" ></a></span><span style="float:left; text-align:center;">44-09 Broadway<br>NY, 11103</span></div>', 40.7584945, -73.9185441],['<div style="float:left;"><span style="float:left; margin-right:5px;"><a href="property-detail.php?ml_num=2563251"><img src="cropImage.php?image=http://links.mlslirealtor.com/mlsphotos/full/1/251/2563251.jpg&w=40&h=40" width="40" height="40" border="0" ></a></span><span style="float:left; text-align:center;">48-15 31 Ave<br>NY, 11103</span></div>', 41.440565, -74.392076],['<div style="float:left;"><span style="float:left; margin-right:5px;"><a href="property-detail.php?ml_num=2474854"><img src="cropImage.php?image=http://links.mlslirealtor.com/mlsphotos/full/1/854/2474854.jpg&w=40&h=40" width="40" height="40" border="0" ></a></span><span style="float:left; text-align:center;">30-62 36th St<br>NY, 11103</span></div>', 40.7635902, -73.9188238],['<div style="float:left;"><span style="float:left; margin-right:5px;"><a href="property-detail.php?ml_num=2641580"><img src="cropImage.php?image=http://links.mlslirealtor.com/mlsphotos/full/1/580/2641580.jpg&w=40&h=40" width="40" height="40" border="0" ></a></span><span style="float:left; text-align:center;">25-92 36th St<br>NY, 11103</span></div>', 40.767123, -73.916005] ];
var labels = ["$199k","$3.20k","$65.80k","$1.88m","$1.50m","$1.80m"];
function initializeMaps() {
var myOptions = {
mapTypeId: google.maps.MapTypeId.ROADMAP,
//mapTypeId: google.maps.MapTypeId.TERRAIN
mapTypeControl: true
};
var map = new google.maps.Map(document.getElementById('map_canvas'),myOptions);
var infowindow = new google.maps.InfoWindow();
var marker, i;
var bounds = new google.maps.LatLngBounds();
for (i = 0; i < markers.length; i++) {
var pos = new google.maps.LatLng(markers[i][1], markers[i][2]);
bounds.extend(pos);
var marker = new MarkerWithLabel({
position: pos,
draggable: true,
raiseOnDrag: true,
map: map,
icon: 'assets/images/home_iconddd.png',
labelContent: labels[i],
//labelAnchor: new google.maps.Point(0, 0),
labelClass: "labels" // the CSS class for the label
//labelStyle: {opacity: 0.95}
});
google.maps.event.addListener(marker, 'mouseover', (function(marker, i) {
return function() {
infowindow.setContent(markers[i][0]);
infowindow.open(map, marker);
}
})(marker, i));
}
map.fitBounds(bounds);
}
</script>
<div id="map_canvas" style="height:850px"></div>
变量标记=[
['22-13斯坦威街
纽约,11103',40.772327,-73.906257],'44-09百老汇
纽约,11103',40.7584945,-73.9185441],'48-15 31大街
纽约,11103',41.440565,-74.392076],'30-62第36街
纽约,11103',40.7635902,-73.9188238],'25-92第36街
纽约,11103',40.767123,-73.916005];
var标签=[“199k美元”、“320万美元”、“6580万美元”、“188万美元”、“150万美元”、“180万美元];
函数初始化映射(){
变量myOptions={
mapTypeId:google.maps.mapTypeId.ROADMAP,
//mapTypeId:google.maps.mapTypeId.TERRAIN
mapTypeControl:true
};
var map=new google.maps.map(document.getElementById('map_canvas'),myOptions);
var infowindow=new google.maps.infowindow();
var标记,i;
var bounds=new google.maps.LatLngBounds();
对于(i=0;i
检查addListener,它有一个函数(标记,i)。。。回调,但您也将i用作循环变量
我无法测试(您没有提供完整的代码),因此这可能是垃圾:
google.maps.event.addListener(marker, 'mouseover', function() {
infowindow.setContent(markers[i][0]);
infowindow.open(map, marker);
});
请重新格式化您的代码,它几乎是unreadable@fablife我已经格式化,但仍然显示相同的问题…可能重复的@fablife仍然得到相同的问题,我不知道;我不知道为什么。。。但是给我找麻烦。如果我没有使用标记类型的标签,它的wokring很好,但是如果我使用,它的星号会显示这个问题。你看到了吗,或者它的答案?您正在使用的MarkerWithLabel版本和Google Maps Javascript API v3的当前版本存在问题。