【发布时间】:2019-12-09 11:47:44
【问题描述】:
我目前正在尝试创建一个地图应用程序,到目前为止,地图加载和自定义信息和图标都可以正常工作。但是,我想向用户显示到地图上的标记有多远(距离)。
此代码有效,但我希望“from”变量成为用户当前位置而不是预定位置。
var onePlace = L.marker([63, 20], {icon: thisIcon}).bindPopup('My text'),
theOtherPlace = L.marker([65, 20], {icon: thatIcon}).bindPopup('My text');
var to = onePlace.getLatLng();
var from = theOtherPlace.getLatLng();
var distance = from.distanceTo(to);
为了设置用户在地图上的位置,我使用他们快速入门指南中的代码,看起来像这样
primaryMap.locate({
});
primaryMap.on('locationfound', positionFound);
primaryMap.on('locationerror', positionNotFound);
function positionFound(e) {
var myPosition = L.marker(e.latlng, {
}).addTo(primaryMap);
}
function positionNotFound(e) {
alert(e.message);
}
但是如何获得我在后期设置的位置是我正在努力的。
基本上,我想要的是这个
var myPos = [??].getLatLng();
var to = onePlace.getLatLng();
var distance = myPos.distanceTo(to);
第一次发帖,部分代码格式不正确,见谅。
无论如何,如果有人可以在这里帮助我,我将非常感激。一直被困在这个问题上,似乎在文档中找不到任何有用的东西(可能只是不太理解,因为我对此很陌生)。
提前致谢!
更新:
jsfiddle:https://jsfiddle.net/xcyniic/98sy6zxb/27/ 也许这可以帮助阐明我在做什么/做错了什么。
【问题讨论】:
标签: javascript leaflet geopositioning