ユーザーのジオロケーションの近くにあるすべての美術館を表示したいと考えています。init の latLng を user_lat_long に置き換えようとすると問題が発生します。init でアラートを使用すると、何らかの理由で user_lat_long 値が定義されません。私が間違っていることを説明してもらえますか?私はまだJSの初心者です。ありがとう!
function init() {
var latLng = new google.maps.LatLng(44.43, 26.11);
Demo.map = new google.maps.Map(Demo.mapContainer, {
zoom: 13,
center: latLng,
mapTypeId: google.maps.MapTypeId.ROADMAP});
var request = {
location: latLng,
radius: 50000,
types: ['museum']
};
infowindow = new google.maps.InfoWindow();
var service = new google.maps.places.PlacesService(Demo.map);
service.nearbySearch(request, function (results, status) {
if (status == google.maps.places.PlacesServiceStatus.OK) {
for (var i = 0; i < results.length; i++) {
{
var placeLoc = results[i].geometry.location;
var marker = new google.maps.Marker({
map: Demo.map,
position: placeLoc
});
google.maps.event.addListener(marker, 'click', function() {
infowindow.setContent(restults[i].name);
infowindow.open(map, this);
});
}
}
}
});
}
google.maps.event.addDomListener(window, 'load', init);
function pozitie() {
if(navigator.geolocation) {
navigator.geolocation.getCurrentPosition(currentPositionCallback);
} else {
alert('The browser does not support geolocation');
}
function currentPositionCallback(position) {
user_lat_long = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);
var marker = new google.maps.Marker({
position: user_lat_long,
map: Demo.map,
icon: image
});
Demo.map.setCenter(user_lat_long);
Demo.map.setZoom(15);
}