以下のコードを使用して、Circle by click イベントを半径 60.000m で表示します。
<html>
<head>
<div id="map"></div>
<style media="screen, projection" type="text/css">
map {
width: 800px;
height: 600px;
}
</style>
</head>
<body>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false">
</script><script type="text/javascript">
function initialize()
{
var mapCenter = new google.maps.LatLng(40, -74);
var map = new google.maps.Map(document.getElementById('map'), {
'zoom': 7,
'center': mapCenter,
'mapTypeId': google.maps.MapTypeId.ROADMAP
});
// Add click event listener
google.maps.event.addListener(map, "click", function (e) {
var image = new google.maps.MarkerImage(
'image/data/ConstBuilder/marker.png',
new google.maps.Size(40, 35),
new google.maps.Point(0, 0),
new google.maps.Point(20, 30)
);
var shadow = new google.maps.MarkerImage(
'image/data/ConstBuilder/shadow.png',
new google.maps.Size(62, 35),
new google.maps.Point(0, 0),
new google.maps.Point(0, 35)
);
var marker = new google.maps.Marker({
draggable: true,
raiseOnDrag: false,
icon: image,
shadow: shadow,
map: map,
position: e.latLng
});
var circle = new google.maps.Circle({
map: map,
radius: 60000,
fillColor: '#AA0000'
});
circle.bindTo('center', marker, 'position');
});
};
google.maps.event.addDomListener(window, 'load', initialize);
</script>
</body>
</html
ここで、もう 1 つの機能を追加したいと思います。これは、クリック イベントの半径値を変更できるラジオ ボタンです (円を表示します)。新しいイベントのようなメソッドを採用する必要があることはわかっていgetRadius()
ます。以下のコードを実装しようとしましたが、成功しませんでした。
google.maps.event.addDomListener(
document.getElementById('circle_radius'), 'change', function() {
circle.setRadius(document.getElementById('circle_radius').value)
});
誰でも解決策を見つけるのを手伝ってもらえますか?