-1
私は3番目のAPIを使用してユーザーの現在地を特定し、latinをinitMap関数に渡しましたが、地図が表示される灰色の画面以外は何も表示されません。私はまた、コンソールのエラーをチェックしましたが、何もありません。 Console.logは、適切な値を持つlatlngオブジェクトも返します。ここでは、コードは次のとおりです。(Google map javascript api) - ユーザーの現在地を表示しない
<script>
var mapDiv = document.getElementById('map');
var pos;
$.get("http://ip-api.com/json", function(data) {
pos = new google.maps.LatLng(data.lat, data.lon);
});
function initMap() {
var map = new google.maps.Map(mapDiv, {
zoom: 14,
center: pos,
mapTypeControl: false
});
var marker = new google.maps.Marker({
position: pos,
map: map,
draggable: false,
animation: google.maps.Animation.DROP,
title: 'Gotcha!'
});
marker.setMap(map);
}
</script>
を試してみてください? – e666
'$ .get'は非同期です。コールバック関数で返されたデータを使用する必要があります。 – geocodezip