2015-04-17 79 views
0

我有一個自定義別針,但它顯示爲醜陋的默認灰色別針。這是我在設置我的引腳的功能。這是一個循環,得到我的腳MapBox自定義別針不顯示

featureCollection.features.push({ 
      "type": "Feature", 
      "properties": { 
       "id": item.id, 
       "title": item.title, 
       "image":item.image, 
       "description": item.description, 
       "icon": { 
        "iconUrl": "../images/pin.png", 
        "iconSize": [29, 36], 
        "iconAnchor": [25, 25], 
        "popupAnchor": [0, -15], 
        "className": "pin" 
       } 
      }, 
      "geometry": { 
       "type": "Point", 
       "coordinates": [ 
        item.long, 
        item.lat 
       ] 
      } 
     }); 

的內部的例如圖標代碼從這裏https://www.mapbox.com/mapbox.js/example/v1.0.0/custom-marker/

回答

1

使用您需要來準備定製標記

var customIcon = L.icon({ 
    "iconUrl": "../images/pin.png", 
    "iconSize": [29, 36], 
    "iconAnchor": [25, 25], 
    "popupAnchor": [0, -15], 
    "className": "pin" 
}) 

然後設置的選項結構使用這個新的圖標,如

geojsonOptions = { 
    pointToLayer: function(feature,latLng) { 
     return L.marker(latLng,{icon:myIcon}) 
    } 
} 

然後包括那些opt這樣的離子在添加到地圖中時會像這樣。 L.geoJson(featureCollection,geojsonOptions).addTo(map)

+0

好吧,這對於獲取圖標非常有用。出於某種原因,儘管圖標不會啓動疊加層,我仍然可以看到新圖標背後的舊圖標。 –

+0

你能向我們展示一個小提琴嗎?或者你的一些疊加代碼? – snkashis

+0

我剛剛在這裏添加了JS。依靠其他我不能推入JSfiddle的東西。 http://jsfiddle.net/shanejones/tq02q5or/ –