Leafletjs 显示我的位置标记而不是硬编码位置
Leafletjs show my location marker instead of hardcoded location
我正在尝试 Leaflet.js,我有一张带有这样标记的地图:
var marker = new L.marker([5.897818, -1.120009],{
draggable: true,
autoPan: true
}).addTo(mymap);
这显示正常,但我希望它出现在我的当前位置而不是上面的硬编码位置。
我该怎么做?
您需要的是利用 Geolocation API 并使用其结果创建标记。
var mymap = L.map('mapid').setView([51.505, -0.09], 13);
navigator.geolocation.getCurrentPosition(position => {
const { coords: { latitude, longitude }} = position;
var marker = new L.marker([latitude, longitude], {
draggable: true,
autoPan: true
}).addTo(mymap);
console.log(marker);
})
将 API 与 Whosebug 一起使用存在一些问题,因此这里有一个 link 到工作 JSFiddle。
我正在尝试 Leaflet.js,我有一张带有这样标记的地图:
var marker = new L.marker([5.897818, -1.120009],{
draggable: true,
autoPan: true
}).addTo(mymap);
这显示正常,但我希望它出现在我的当前位置而不是上面的硬编码位置。
我该怎么做?
您需要的是利用 Geolocation API 并使用其结果创建标记。
var mymap = L.map('mapid').setView([51.505, -0.09], 13);
navigator.geolocation.getCurrentPosition(position => {
const { coords: { latitude, longitude }} = position;
var marker = new L.marker([latitude, longitude], {
draggable: true,
autoPan: true
}).addTo(mymap);
console.log(marker);
})
将 API 与 Whosebug 一起使用存在一些问题,因此这里有一个 link 到工作 JSFiddle。