var map = L.map('map').setView([38.914544, 139.836720], 16, { scrollWheelZoom: false, }); // OpenStreetMapのタイルレイヤーを地図に追加 L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', { attribution: 'Map data © <a href="http://openstreetmap.org">OpenStreetMap</a> contributors' }).addTo(map); // パルスアニメーション付きアイコンの定義 var PulsingIcon = L.divIcon({ className: 'leaflet-pulsing-icon' }); // 現在地が取得できた場合の処理 function gpsSuccess(e) { L.marker(e.latlng, { icon: PulsingIcon }).addTo(map).bindPopup("あなた").openPopup(); } // 現在地が取得できなかった場合の処理 function gpsError(e) { alert("現在地を取得できませんでした。" + e.message); } // 現在地の取得 map.locate({ setView: true, maxZoom: 13, timeout: 20000 }); // 成功した場合の処理 map.on('locationfound', gpsSuccess); // 失敗した場合の処理 map.on('locationerror', gpsError);