Leafletjs-event-handling
提供:Dev Guides
LeafletJS-イベント処理
Leaflet JavaScriptプログラムは、ユーザーが生成したさまざまなイベントに応答できます。 この章では、リーフレットを操作しながらイベント処理を実行する方法を示すいくつかの例を提供します。
イベント処理
以下の手順に従って、イベントをマップに追加します。
ステップ1 *-<div>要素(文字列またはオブジェクト)とマップオプション(オプション)を渡すことで *Map オブジェクトを作成します。
ステップ2 *-目的のタイルのURLを渡すことで *Layer オブジェクトを作成します。
ステップ3 *- *Map クラスの* addLayer()*メソッドを使用して、レイヤーオブジェクトをマップに追加します。
- ステップ4 *-以下に示すように、マップにハンドラーを追加します。
map.on("click", function(e){
new L.Marker([e.latlng.lat, e.latlng.lng]).addTo(map);
})
例
次のコードは、リーフレットを使用した処理も示しています。 実行時に、マップをクリックすると、その特定の場所にマーカーが作成されます。
<!DOCTYPE html>
<html>
<head>
<title>Leaflet Polygons</title>
<link rel = "stylesheet" href = "http://cdn.leafletjs.com/leaflet-0.7.3/leaflet.css"/>
<script src = "http://cdn.leafletjs.com/leaflet-0.7.3/leaflet.js"></script>
</head>
<body>
<div id = "map" style = "width: 900px; height: 580px"></div>
<script>
//Creating map options
var mapOptions = {
center: [16.506174, 80.648015],
zoom: 7
}
var map = new L.map('map', mapOptions); //Creating a map object
//Creating a Layer object
var layer = new L.TileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png');
map.addLayer(layer);//Adding layer to the map
map.on("click", function(e){
new L.Marker([e.latlng.lat, e.latlng.lng]).addTo(map);
})
</script>
</body>
</html>
それは次の出力を生成します-