2015-10-01 69 views
2

這看起來很平常,但我無法在任何地方找到答案。我已經設置了circleMarker的className屬性:訪問小冊子中的className屬性

var marker = L.circleMarker([lat, lng], { 
    radius: 6, 
    color: 'black', 
    weight: 2, 
    opacity: 1, 
    fillColor: 'red', 
    fillOpacity: 1.0, 
    className: 'redSpot' 
}).addTo(map); 

,我只是想以後訪問className屬性,是這樣的:

marker.className 

但是這給「不確定」,而不是「redSpot」 。其他嘗試都給'未定義':

marker.attr('className') 
marker.data('className') 

如何訪問className屬性?

回答

1

我不確定這個最終的故事是什麼,但在我測試的所有版本的Leaflet(0.7 - 1.0)中,circleMarker類不會繼承其構造函數的className選項......即使文檔說應該。奇怪的。我知道小冊子小組描述了與此選項有關的警告和錯誤。

試試這個。

var marker = L.circleMarker([lat, lng], { 
    radius: 6, 
    color: 'black', 
    weight: 2, 
    opacity: 1, 
    fillColor: 'red', 
    fillOpacity: 1.0 
}).addTo(map); 

marker.className = "redSpot"; 
+0

您的解決方案有效,謝謝。但我不明白:在傳單文檔中,它表示circleMarker擴展了Marker,它擴展了Path。而className是Path的可行選項。那麼爲什麼構造函數不接受它? – Bazley

+0

我更新了我的答案,反映了這一點。我認爲它根本沒有構造函數的選項,但是你是對的,文檔似乎表明這是一個可接受的選項。 –

+0

確實很奇怪。但是,嘿,它的作品!謝謝。 – Bazley