ユーザーがマップを左クリックしたときにマーカーを Google マップに追加する方法の非常に簡単な例を見つけるのに驚くほど苦労しています。
ここ数時間、Google Maps API のドキュメントを調べてみましたが、助けていただければ幸いです。
ユーザーがマップを左クリックしたときにマーカーを Google マップに追加する方法の非常に簡単な例を見つけるのに驚くほど苦労しています。
ここ数時間、Google Maps API のドキュメントを調べてみましたが、助けていただければ幸いです。
さらに多くの調査を行った後、解決策を見つけることができました。
google.maps.event.addListener(map, 'click', function(event) {
placeMarker(event.latLng);
});
function placeMarker(location) {
var marker = new google.maps.Marker({
position: location,
map: map
});
}
2017 年の解決策は次のとおりです。
map.addListener('click', function(e) {
placeMarker(e.latLng, map);
});
function placeMarker(position, map) {
var marker = new google.maps.Marker({
position: position,
map: map
});
map.panTo(position);
}
これは実際には文書化された機能であり、ここで見つけることができます
// This event listener calls addMarker() when the map is clicked.
google.maps.event.addListener(map, 'click', function(e) {
placeMarker(e.latLng, map);
});
function placeMarker(position, map) {
var marker = new google.maps.Marker({
position: position,
map: map
});
map.panTo(position);
}
@Chaibi Alaa、ユーザーが一度だけ追加してマーカーを移動できるようにします。最初のクリックでマーカーを設定し、その後のクリックで位置を変更するだけです。
var marker;
google.maps.event.addListener(map, 'click', function(event) {
placeMarker(event.latLng);
});
function placeMarker(location) {
if (marker == null)
{
marker = new google.maps.Marker({
position: location,
map: map
});
}
else
{
marker.setPosition(location);
}
}
this.marker = new google.maps.Marker({
position: new google.maps.LatLng(12.924640523603115,77.61965398949724),
map: map
});
this.placeMarker(coordinates, this.map);
placeMarker(location, map) {
var marker = new google.maps.Marker({
position: location,
map: map
});
this.markersArray.push(marker);
}