如何使用directionsjs更改Mapbox的标记?它显示A和B标记

时间:2016-06-07 13:19:16

标签: javascript mapbox markers

如何更改Mapbox标记(使用directionjs时)?

显示A和B标记。

我尝试编辑标记但丢失方向。

var x= L.marker([51.508245, -0.087700], {
    icon: L.mapbox.marker.icon({
        'marker-size': 'large',
        'marker-icon': 'monument',
        'marker-color': '#fa0'
    })
}).addTo(map);  


// Set the origin and destination for the direction and call the routing service
directions.setOrigin(L.latLng(x)); 
directions.setDestination(L.latLng(51.508112, -0.075949));   
directions.query(); 



var directionsLayer = L.mapbox.directions.layer(directions).addTo(map); 
var directionsRoutesControl = L.mapbox.directions.routesControl('routes', directions)
    .addTo(map);
  var directionsLayer = L.mapbox.directions.layer(directions, {readonly: true}).addTo(map);

以上就是我试过的但它打破了方向。我正在寻找一种方法来改变A和B的图标。

JSFiddle:https://jsfiddle.net/x48qrca8/1/

1 个答案:

答案 0 :(得分:1)

尝试查看有关如何执行不同标记样式的示例。对于图像,check out this example,特别是此代码:

myLayer.on('layeradd', function(e) {
  var marker = e.layer,
      feature = marker.feature;
  marker.setIcon(L.icon(feature.properties.icon));
});
myLayer.setGeoJSON(geojson);

这将进入GeoJSON属性并使用icon下的feature.properties值来确定应如何设置样式。