わかりましたので、私は自分のウェブサイトに Google Maps API を使用しており、'Set Current Location' 機能を利用しています。
一部のユーザーにとっては正常に機能しますが、他のユーザーにとっては、「間違った」場所にデフォルト設定されています。
例 1 リバプールの学生寮にいるときに、友人にサイトをテストしてもらいました。彼が現在の場所を許可すると、彼の場所がスタッフォードの家族の家として設定されます。
例 2 大学のコンピューターで Web サイトをテストし、現在地機能を許可しました。今回は、コンピューターの場所ではなく、大学のサーバーが配置されている建物に場所を設定しました (リバプールの反対側です!)。
私は IP 地理位置情報について十分に知らないので、解決策を考えることができず、同様のスタックオーバーフローの質問を見つけることもできません。より正確な方法で場所を設定する方法はありますか? おそらく、郵便番号を使用して場所を設定できますか?
どんな助けでも大歓迎です。
トリスタン
編集:これは、初期化関数内で場所を設定するためのコードです
if(navigator.geolocation) {
navigator.geolocation.getCurrentPosition(currentPositionCallback);
} else {
alert('The browser does not support geolocation');
}
function currentPositionCallback(position) {
// Create a new latlng based on the latitude and longitude from the users position
var user_lat_long = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);
// Add a marker using the user_lat_long position
var userpos = new google.maps.Marker({
position: user_lat_long,
icon: new google.maps.MarkerImage("img/icons/icon_home.png", new google.maps.Size(32, 34)),
map: map
});
// Set the center of the map to the users position and zomm into a more detailed level
map.setCenter(user_lat_long);
map.setZoom(15);
}