提前感谢,我现在停留在试图找出我的代码无法正常工作的那一刻,我一直在尝试使用infowindow显示最近几个小时的内容,我找不到为什么内容是没有在盒子里面显示。目前,我可以根据坐标在地图中的不同位置显示多个标记,现在我只需要在点击标记时显示内部有一些相关内容的信息窗口。我可以显示infowindow但它是空白的,它没有显示字符串。在这里我粘贴我的功能。再次感谢。
function initialize() {
var mapOptions = {
mapTypeId: google.maps.MapTypeId.ROADMAP,
mapTypeControl: false
};
var map = new google.maps.Map(document.getElementById("map_canvas"),mapOptions);
var infowindow = new google.maps.InfoWindow();
var marker, i;
var bounds = new google.maps.LatLngBounds();
var image = 'http://193.168.3.5/Location&Tracking/images/taxiv7_trans_small.png';
for (i = 0; i < markers.length; i++) {
var pos = new google.maps.LatLng(markers[i][1], markers[i][2]);
bounds.extend(pos);
marker = new google.maps.Marker({
position: pos,
map: map,
icon: image
});
function placeMarker(location) {
var marker = new google.maps.Marker({
position: location,
map: map
});
var infowindow = new google.maps.InfoWindow({
content: 'Latitude: ' + location.lat() +
'<br>Longitude: ' + location.lng()
});
infowindow.open(map,marker);
}
var infowindow = new google.maps.InfoWindow({
content:"Hello World!"
});
google.maps.event.addListener(marker, 'click', (function(marker, i) {
return function() {
infowindow.setContent(markers[i][0]);
infowindow.open(map, marker);
}
})(marker, i));
}
map.fitBounds(bounds);
}
答案 0 :(得分:5)
最后我找到了解决自己问题的方法: 显示infowindow内的文本,但文本颜色为白色作为背景,它使隐形。我通过对其应用html代码并将其更改为蓝色来更改文本颜色。在给出内容时我也在重复:value和infowindow.open两次,这对于编写前一个没有任何意义。 在这里,我粘贴了更正的代码,它现在适用于我。 不管怎样,谢谢。
function initialize() {
//Create an object variable containing set of properties, to pass to the map
var mapOptions = {
mapTypeId: google.maps.MapTypeId.ROADMAP,
mapTypeControl: false
};
// Intializing map by calling constructor
var map = new google.maps.Map(document.getElementById("map_canvas"),mapOptions);
var infowindow = new google.maps.InfoWindow();
var marker, i;
var bounds = new google.maps.LatLngBounds();
//set image to the icon marker
var image = 'http://193.168.3.5/Location&Tracking/images/taxiv7_trans_small.png';
for (i = 0; i < markers.length; i++) {
var pos = new google.maps.LatLng(markers[i][1], markers[i][2]);
bounds.extend(pos);
marker = new google.maps.Marker({
position: pos,
map: map,
icon: image
});
google.maps.event.addListener(marker, 'click', (function(marker, i) {
return function() {
var infowindow = new google.maps.InfoWindow({
content:'<p style="color:blue;"> This is marker No.'+markers[i][0]+'</p>'});
infowindow.open(map, marker);
}
})(marker, i));
}
map.fitBounds(bounds);
}