我知道很多人面臨這種類型的錯誤,因爲很多問題&回答有關這種類型的錯誤谷歌地圖顯示的錯誤,但地圖,顯示正確
下面的是我的動態頁腳
<script src="https://maps.googleapis.com/maps/api/js?key=key&callback=initMap" async defer></script>
<script async src="assets/js/custom.js"></script>
custom.js看起來像
jQuery(document).ready(function($) {
// Google Map
function initMap(){
var location = new google.maps.LatLng(40.712784, -74.005941);
var myOptions = {
zoom: 6,
center: location,
scrollwheel:false
};
var map = new google.maps.Map(document.getElementById("map"),
myOptions);
var marker = new google.maps.Marker({
position: location,
map: map
});
// alert("Google Working");
};
google.maps.event.addDomListener(window, "load", initMap);
});
地圖格只爲contact-us.html
頁
<div id="map"></div>
但地圖顯示&也呈現出類似下面
InvalidValueError: initMap is not a function
&沒有contactus.html所有頁面顯示在控制檯上提示以下錯誤:錯誤
TypeError: a is null
...ndChild(c)};_.ug=function(a){for(var b;b=a.firstChild;)_.tg(b),a.removeChild(b)}
我2天&去年搜索申請這個,但沒有任何有用的答案。
我需要銷燬錯誤。
我的代碼有什麼問題。
感謝
基於編輯答案,工作現在
function initMap(){
var divId = document.getElementById("map");
if (!divId) {
return;
}
var location = {lat: 40.712784, lng: -74.005941};
var map = new google.maps.Map(divId,{
zoom: 6,
center: location,
scrollwheel:false
});
var marker = new google.maps.Marker({
position: location,
map: map
});
}
加載JS
<script src="assets/js/custom.js"></script>
<script src="https://maps.googleapis.com/maps/api/js?key=key&callback=initMap" async defer></script>
,爲什麼它的工作原理,儘管錯誤的原因是因爲在頁面加載後,你叫谷歌。來自與initMap相同範圍內的maps.event.addDomListener。 – BMcV
@Piotr我根據你的指示編輯過,但仍然顯示錯誤 – faul
@faul:好的,請檢查編輯我的答案。 –