-1
私は、あなたがマーカーを見るかどうかの半径を設定することができる場所に何かしようとしています。しかし、それはエラーを与え続けます:currentMarker.setVisibleは関数ではありません。以下のコードであろうマーカーが行われるたびに呼び出されるsetVisibleは関数ではありません。
function calcDistance(marker){
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(function(position) {
pos.latlng = {
lat: position.coords.latitude,
lng: position.coords.longitude
};
var currentMarker = new google.maps.LatLng(marker.lat,marker.lng)
var currentPos = new google.maps.LatLng(pos.latlng.lat, pos.latlng.lng)
var distance = google.maps.geometry.spherical.computeDistanceBetween(currentMarker, currentPos);
console.log((distance/1000).toFixed(2));
if(distance/1000 > radius){
currentMarker.setVisible(false);
}
else {
currentMarker.setVisible(true);
}
});
}
}
機能:可視設定
for (i = 0; i < $winkels.length; i++) {
marker[i] = new google.maps.Marker({
position: new google.maps.LatLng($winkels[i].lat, $winkels[i].lng),
map: map,
latlng: {lat: $winkels[i].lat, lng: $winkels[i].lng}
});
calcDistance(marker[i].latlng);
}
何が新しいgoogle.maps.LatLng(marker.lat、marker.lng)を返しますか? –
これは、オブジェクトをGoogleマップのマーカーオブジェクトに変換します – Wesleyvans