簡體   English   中英

傳單-單擊將類添加到標記圖標

[英]Leaflet - add class to marker icon on click

我有一個簡單的傳單地圖,上面有一些標記。 為了給用戶帶來更好的體驗,我想突出顯示單擊的標記。 最好和最簡單的方法是,如果我可以將其他類添加到單擊的標記中,以在CSS上使用它。 但是我不知道怎么做,我發現的全部都沒有回答我的問題,或者我只是不理解。

Java腳本

//Set the marker icon

    var markerIcon = L.vectorIcon({
            className: 'markerIcon',
            svgHeight: 30,
            svgWidth: 30,
            shape: {r: '15', cx: '15', cy: '15'},
            style: {
                fill: '#73B0E1'
            }
    });


//Populate the map with markers

    var markers = L.markerClusterGroup({});
    if(mapID == 'mapPublic') {
        markers.addLayer(L.marker([50, 8], {icon: markerIcon})).on('click', onClick);
        markers.addLayer(L.marker([50, 8.1], {icon: markerIcon})).on('click', onClick);
        markers.addLayer(L.marker([50, 8.2], {icon: markerIcon})).on('click', onClick);
        markers.addLayer(L.marker([50.1, 8.1], {icon: markerIcon})).on('click', onClick);
    }

    map.addLayer(markers);


//Onclick Function for the markers

    function onClick() {}

我如何向標記添加第二類以在CSS中使用它? 我已經嘗試過this.classList.add('activeMarker')但是由於傳單標記邏輯,它沒有起作用。

該標記不是DOM對象,因此嘗試向其添加類不是很好。

如果您嘗試設置圖標的樣式,則可以使用

function onClick(e) {

e.layer._icon.classList.add('activemarker');
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM