我读了很多例子。他们都提到隐藏覆盖
overlay.setMap(null);
工作正常。但是在隐藏它之后再次显示它虽然会在初始化期间显示但不起作用。所有例子都告诉我使用
overlay.setMap(map);
但叠加层不会再出现?!有什么问题?
请参阅http://jsbin.com/oworor/3/edit
上的代码MJ
答案 0 :(得分:1)
“map”变量是mapInitialize函数的本地变量,更改:
function mapInitialize() {
var myLatlng = new google.maps.LatLng(47.72, 13.48);
var myOptions = {
zoom: 13,
center: myLatlng,
mapTypeId: google.maps.MapTypeId.TERRAIN
}
var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
为:
function mapInitialize() {
var myLatlng = new google.maps.LatLng(47.72, 13.48);
var myOptions = {
zoom: 13,
center: myLatlng,
mapTypeId: google.maps.MapTypeId.TERRAIN
}
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);