可能重复:
信息窗口不显示
至今犹存对我不明白一个问题。 我不明白为什么这是行不通的,我敢肯定这件事情非常简单。 我已经改变了一些东西,仍然一无所获。 我想有一个用户点击地图上的任意位置和信息窗口会告诉他们该位置的纬度/经度。 谢谢
var window;
function InfoWindow(location) {
if ( window ) {
window.setPosition(location);
} else {
window = new google.maps.infoWindow({
position: location,
content: "sam"
});
}
}
google.maps.event.addListener(map, 'click', function(event) {
InfoWindow(event);
});
这里有多种问题。 首先,我不会用window
作为变量名。 其次,当你正在创建的信息窗口,它需要资本化
new google.maps.InfoWindow()
第三,要传递的事件对象的信息窗口创建函数。 各地传递的事件对象是坏的。 所以,现在,在信息窗口功能,位置是指事件对象,而不是位置。 你应该通过event.latLng instead.You还需要调用信息窗口打开的方法。
var infoWindow;
function InfoWindow(location) {
if ( infoWindow ) {
infoWindow.setPosition(location);
} else {
infoWindow = new google.maps.InfoWindow({
position: location,
content: "sam"
});
}
infoWindow.open();
}
google.maps.event.addListener(map, 'click', function(event) {
InfoWindow(event.latLng);
});