当我打开页面时,javascript会在单击按钮之前运行。当我单击按钮时它也会运行。在点击按钮之前,我不希望它一直运行。
代码:
function initMap() {
var map = new google.maps.Map(document.getElementById('map'), {
center: {lat: 45.973, lng: -68.81},
zoom: 10
});
}

html, body {
height: 100%;
margin: 0;
padding: 0;
}
#map {
height: 50%;
}

<div id="map"></div>
<button id="showLocation" onclick="initMap()">Show Location</button>
<script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyDTUe6NaV7fwxOOESwnEdq3YcT9Y2Wr8lg&callback=initMap"
async defer></script>
&#13;
提前致谢!
答案 0 :(得分:9)
您正在将initMap
作为回调传递给'api / js'。这意味着当脚本加载时,它将运行回调方法,即执行initMap
。
尝试从网址中删除&callback=initMap
。
答案 1 :(得分:2)
将 initMap()重命名为其他名称。 Google Maps API在回调时在init上调用此函数名称。
答案 2 :(得分:2)
删除&#34;&amp; callback = initMap&#34;来自最后一行的script-src-tag。