2015-10-14 2 views
0

Я работаю с картографической картой на веб-странице, и у меня все хорошо работает с картой и выпавшими булавками, но не может работать с пользовательскими маркерами.пользовательские маркеры, не отображающие на карте карту

Моего кода, который работает для сбрасывания ниппеля:

L.mapbox.featureLayer({ 
type: 'Feature', 
geometry: { type:'Point', coordinates:[$longitude, $latitude] }, 
properties: { title:'My Location', description:'My Description', 'marker-size':'large', 'marker-color':'#cc0000', 'marker-symbol':'building' } 
}).addTo(map); 

Это работает и заполнит карту с моими местами.

Я использовал этот код, чтобы попытаться добавить пользовательский маркер, но это не работает:

L.mapbox.featureLayer({ 
type: 'Feature', 
geometry: { type:'Point', coordinates:[$longitude, $latitude] }, 
properties: { title:'My Location', description:'My Description', icon: { iconUrl: 'https://www.mapbox.com/mapbox.js/assets/images/astronaut1.png', iconSize: [50, 50], iconAnchor: [25, 25], popupAnchor: [0, -25], className: 'dot' } } 
}).addTo(map); 

У меня также есть несколько булавки и другие слои на карте, которые могут быть включены или выключены, и все хорошо работает, я просто не могу заставить этот пользовательский маркер работать вообще!

Есть ли у кого-либо пользовательские маркеры, работающие с кодом, подобным этому на карте?

ответ

0

Я не думаю, что вы можете указать пользовательские параметры маркера, такие как icon, как и в главном кеше свойств GeoJSON. Я считаю, что вам нужно будет сделать что-то вроде ниже.

var customIcon = new L.Icon({iconUrl: 'https://www.mapbox.com/mapbox.js/assets/images/astronaut1.png', iconSize: [50, 50], iconAnchor: [25, 25], popupAnchor: [0, -25], className: 'dot' }) 
L.mapbox.featureLayer(
{ 
    type: 'Feature', 
    geometry: { type:'Point', coordinates:[$longitude, $latitude] }, 
    properties: { title:'My Location', description:'My Description'} 
}, 
{ 
    pointToLayer: function(feature,latLng) { return L.marker(latLng, {icon: customIcon}} 
}).addTo(map); 

См https://www.mapbox.com/mapbox.js/api/v2.2.2/l-mapbox-featurelayer/

+0

Спасибо за ваш вклад, но этот код также не работает – Richard

+0

любой шанс вы положить это в jsfiddle? – snkashis