Javascript 显示我的位置标记,而不是硬编码的位置

Javascript 显示我的位置标记,而不是硬编码的位置,javascript,geolocation,leaflet,maps,Javascript,Geolocation,Leaflet,Maps,我正在试用传单.js,我有一张带有如下标记的地图: var marker = new L.marker([5.897818, -1.120009],{ draggable: true, autoPan: true }).addTo(mymap); 这显示正常,但我希望它显示在我的当前位置,而不是上面的硬编码位置 我该怎么做?您需要的是点击并使用结果创建标记 var mymap = L.map('mapid').setView([51.505, -0.09], 13); nav

我正在试用传单.js,我有一张带有如下标记的地图:

var marker = new L.marker([5.897818, -1.120009],{
    draggable: true,
    autoPan: true
}).addTo(mymap);
这显示正常,但我希望它显示在我的当前位置,而不是上面的硬编码位置


我该怎么做?

您需要的是点击并使用结果创建标记

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);
})

使用带有Stackoverflow的API时出现一些问题,因此这里有一个指向工作的链接。

它要求我获得地理位置的许可,但标记没有出现。当您在本地浏览器上打开计算机上的html页面时,它不工作吗?啊,好的,我看到了它是什么。我不久前做了这个,所以里面有一个嵌入式API密钥。如果转到,则可以创建自己的API密钥。得到一个后,只需更新脚本中设置平铺层的部分,并用您自己的密钥替换access_令牌后的所有内容。好的,我创建了一个帐户并更改了access令牌,但仍然没有出现指针。我正在使用chrome,双击桌面上的文件打开html文件。我需要在线托管此页面以显示地理位置标记吗?我会在getCurrentPosition回调中添加一些日志记录,以验证它是否获得位置信息。另外,您是否能够在JSFIDLE或某些托管环境中实现此功能?下面的控制台日志不返回任何内容:navigator.geology.getCurrentPositionposition=>{const{coords:{latitude,longitude}}=position;var marker=new L.marker[latitude,longitude],{draggable:true,autoPan:true}.addTomymap;console.log${latitude}-${longitude};console.logmarker;}