嗨我有这个代码,每当选择一个选项时,它会显示带有信息窗口的标记。是否有任何可能的方法在信息窗口中添加图片,所以我们可以说,如果选项是晴天,sun.jpg会显示在信息窗口中,依此类推其他2个选项。当下' hi&#39 ;显示在信息窗口中。
function dropweather()
{
var themarker;
var contentString = 'hi';
var infowindow = new google.maps.InfoWindow({
content: contentString
});
var lat = prompt ('Latitude'); var lng = prompt('Longitude');
switch(document.getElementById('weatherkind').value)
{
case 'sunny':
themarker = new google.maps.Marker({
position: new google.maps.LatLng(lat,lng),
map:map
});
break;
case 'rainy':
themarker= new google.maps.Marker({
position: new google.maps.LatLng(lat,lng),
map:map
});
break;
case 'cloudy':
themarker= new google.maps.Marker({
position: new google.maps.LatLng(lat,lng),
map:map
});
break;
}
google.maps.event.addListener(themarker, 'click', function() {
infowindow.open(map,themarker);
infowindow.setContent(this.html);
});
}
google.maps.event.addDomListener(window,'load',initialize);
答案 0 :(得分:1)
我无法在您的代码中的任何位置找到marker
的引用。
所以试试
google.maps.event.addListener(marker, 'click', function() {
infowindow.setContent(html);
infowindow.open(map, this); //this refers to the marker that is clicked
});
如果你有变种var marker
指的是像
这样的有效标记var marker = new google.maps.Marker({
position: new google.maps.LatLng(lat,lng),
map:map
});
如果没有范围问题,那么您的代码将起作用。因为this
可以正常工作所以不需要它