在地图之前加载标记

时间:2015-02-15 12:13:09

标签: javascript leaflet


我正在尝试重现Foursquare的网络用户界面 我注意到的是,在地图上,标记是在加载地图之前的加载方式 传单有可能吗? 有了这段代码,我认为不可能

L.marker([lat, lng], {icon: iconMarker}).addTo(map);

他们是怎么做到的?

2 个答案:

答案 0 :(得分:0)

我想我知道如何: 他们在定位标记后加载Tiles,如:

 markers = L.marker([lat, lng], {icon: iconMarker}).addTo(map);
L.tileLayer('https://{s}.tiles.mapbox.com/v4/MapID/{z}/{x}/{y}.png?access_token=Token').addTo(map);

答案 1 :(得分:0)

当然,只要加载Leaflet库,您就可以创建标记,图层,多边形等等。没有L.Map的实例可以执行此操作。

// Define marker first
var marker = L.marker([0,0]);

// Define map later   
var map = L.map('map', {
  'center': [0, 0],
  'zoom': 1,
  'layers': [
    L.tileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
      'attribution': 'Map data © OpenStreetMap contributors'
    })
  ]
});

// Add afterwards
marker.addTo(map);

关于Plunker的工作示例:http://plnkr.co/edit/0zaogf?p=preview

或在定义地图时包含标记:

// Define marker first
var marker = L.marker([0,0]);

// Define map later include marker
var map = L.map('map', {
  'center': [0, 0],
  'zoom': 1,
  'layers': [
    L.tileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
      'attribution': 'Map data © OpenStreetMap contributors'
    }),
    marker
  ]
});