2017-10-17 2 views
0

マップ内のすべてのユーザーのジオロケーションをWebサイトから表示しようとしています。 GoogleマップのAPIドキュメントを使用して、自分の場所をユーザーとして表示する方法があります。しかし、私はどのようにウェブサイト上の登録された人々からすべての地理位置を表示するためにそれを作るのですか?自動的に登録されたユーザーのジオロケーションをグローバルマップに表示するには、登録時にgoogle maps apiを使用しますか?

<div id="map"></div> 
<script> 

    function initMap() { 
    var map = new google.maps.Map(document.getElementById('map'), { 
     center: {lat: -34.397, lng: 150.644}, 
     zoom: 6 
    }); 
    var infoWindow = new google.maps.InfoWindow({map: map}); 

    // Try HTML5 geolocation. 
    if (navigator.geolocation) { 
     navigator.geolocation.getCurrentPosition(function(position) { 
     var pos = { 
      lat: position.coords.latitude, 
      lng: position.coords.longitude 
     }; 

     infoWindow.setPosition(pos); 
     infoWindow.setContent('Location found.'); 
     map.setCenter(pos); 
     }, function() { 
     handleLocationError(true, infoWindow, map.getCenter()); 
     }); 
    } else { 
     // Browser doesn't support Geolocation 
     handleLocationError(false, infoWindow, map.getCenter()); 
    } 
    } 

    function handleLocationError(browserHasGeolocation, infoWindow, pos) { 
    infoWindow.setPosition(pos); 
    infoWindow.setContent(browserHasGeolocation ? 
          'Error: The Geolocation service failed.' : 
          'Error: Your browser doesn\'t support geolocation.'); 
    } 
</script> 
+2

こんにちは、私はStackOverflowへようこそ。適切な質問をし、ガイドラインに従って改善する方法については、https://stackoverflow.com/help/how-to-askを参照してください。最初のステップとして、適切な書式設定とコードをコードに適用してください。 –

+0

申し訳ありません。今はそれが良いと思っています。 – Caesar

+0

だから、私が理解していれば、地図上の登録ユーザーの座標にマーカーを追加したいのですか?はいの場合:自分のジオロケーションを表示するのと同じ方法で、登録ユーザーの緯度/経度座標でマーカーを追加するだけです。 –

答えて

0

google.maps.Marker()型のオブジェクトを作成し、それの機能を使って位置を設定し、setMap機能を使用して、マップに追加します。

例(緯度/経度は、ドイツの中心である - あなたのユーザを挿入そこ座標):

var marker=new google.maps.Marker(); 
// use your registered user coordinates here 
marker.setPosition(new google.maps.LatLng(48.14544, 8.19208)); 
marker.setMap(map); 

またあなたは、すべてのマーカーが表示さ得るためにあなたのマップの自動ズームを行うために境界線を使用することができます。

var bounds=new google.maps.LatLngBounds(); 
... 
bounds.extend(marker.getPosition()); 
... 
map.fitBounds(bounds); 
関連する問題