問題は、次のコードを使用してグーグルマップをロードできないことです。マップキャンバスが空白で、Chromeがスローされています
Uncaught TypeError:undefinedは関数ではありません
コードは次のとおりです。
var MYAPP = MYAPP || {};
MYAPP.Map = function() {
var _map = null;
return{
init: function() {
_map = document.getElementById('map_canvas');
var src = 'http://maps.googleapis.com/maps/api/js?sensor=false&' +
'callback=MYAPP.Map.googleMapsCallback';
$.getScript(src);
},
googleMapsCallback: function() {
var options = {
zoom: 15,
center: new google.maps.Latlng(13.353988,33.815918),
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var gMap = new google.maps.Map(_map, options);
this.displayMarkers();
},
displayMarkers: function() {
//markers code
}
};
}();
$.getScript
指定されたコールバック関数'googleMapsCallback'を使用して非同期でgMapsをロードしています。コールバック関数が起動していますが、マップが読み込まれません。スクリプトは次の行で壊れています:
new google.maps.Latlng(13.353988,33.815918),
なぜこれが起こるのか、そしてそれをどのように解決するのか誰もが知っていますか?