Карта - зарезервированное слово в EcmaScript, поэтому не следует использовать его в качестве имени переменной: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map
Проблема в этой строке (jsfiddle считает, что Map
только для чтения):
Map = null;
Переименуйте переменную вашей карты во что-то другое (например, map
, в нижнем регистре "m").
подтверждение концепции скрипта
фрагмент кода:
map = null;
function init() {
var mapOptions = {
center: {
lat: 0,
lng: 0
},
zoom: 1
};
map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);
}
google.maps.event.addDomListener(window, "load", init);
html,
body,
#map_canvas {
height: 100%;
width: 100%;
margin: 0px;
padding: 0px
}
<script src="https://maps.googleapis.com/maps/api/js"></script>
<div id="map_canvas"></div>