當用戶單擊特定的影像標記時,我正在嘗試更改影像標記。這里的問題是,當我點擊一個市場 img 變化時,但當我點擊 outside 或 onother market 時,什么也沒有發生。(下面的螢屏截圖)
請在這里查看
這如果我的 JS :
var LeafIcon = L.Icon.extend({
options: {
iconSize: [38, 95],
iconAnchor: [22, 94],
shadowAnchor: [4, 62],
popupAnchor: [-3, -76],
},
});
var greenIcon = new LeafIcon({
iconUrl: project.path.base "images/map/marker-in.png",
}),
redIcon = new LeafIcon({
iconUrl: project.path.base "images/map/marker-active.png",
});
var testmarker = L.marker([data.lat, data.lng], { icon: greenIcon })
.on("click", (e, j) => {
e.target.setIcon(redIcon);
console.log("target", e.target)
})
.addTo(map)
.bindPopup($popin.innerHTML);
uj5u.com熱心網友回復:
記住最后一次選擇并重置該標記
var greenIcon = new LeafIcon({
iconUrl: project.path.base "images/map/marker-in.png",
}),
redIcon = new LeafIcon({
iconUrl: project.path.base "images/map/marker-active.png",
});
var lastMarker;
var testmarker = L.marker([data.lat, data.lng], { icon: greenIcon })
.on("click", (e, j) => {
if(lastMarker){
lastMarker.setIcon(greenIcon);
}
e.target.setIcon(redIcon);
console.log("target", e.target)
lastMarker = e.target;
})
.addTo(map)
.bindPopup($popin.innerHTML);
另一種方法是在彈出視窗打開/關閉時始終設定和重置標記:
var testmarker = L.marker([data.lat, data.lng], { icon: greenIcon })
.on("popupopen", (e) => {
e.target.setIcon(redIcon);
})
.on("popupclose", (e) => {
e.target.setIcon(greenIcon);
})
.addTo(map)
.bindPopup($popin.innerHTML);
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/484622.html
標籤:javascript 字典 传单
上一篇:字典串列中的Python匹配鍵
下一篇:如何讓Alexa閱讀簡單的字典?
