簡體   English   中英

傳單 - openPopup() 未使用 geoJSON 顯示

[英]Leaflet - openPopup() not showing with geoJSON

我正在嘗試將彈出窗口綁定到 geoJSON 層上的標記。 為此,我使用了 onEachFeature 函數:

var onEachFeature = function(feature, layer) {
                    layer.bindPopup("hello",
                                   {closeButton:false,
                                    autoClose: false,
                                    closeOnClick: false,
                                    className: "popup-custom"}).openPopup();
}

這不會導致彈出顯示。 彈出窗口已創建,但我需要單擊標記以顯示它。 在不單擊標記的情況下使彈出窗口可見,我缺少什么?

我沒有使用 pointToLayer 函數,因為我還使用過濾器功能過濾功能並使用請求自定義彈出窗口和標記(彈出窗口綁定實際上在回調函數中)。

你得到一個 geojsonlayer 作為結果,然后你可以打開每個圖層的彈出窗口:

var geojsonLayer = L.geoJSON(data, {
    onEachFeature : onEachFeature 
}).addTo(map);

geojsonLayer.eachLayer(function(layer){
    layer.openPopup();
});

謝謝@Falke-Design,我讓它工作了。 我試過這個,但沒有用:

var geojsonLayer = L.geoJSON(data, {
    onEachFeature : onEachFeature 
});

geojsonLayer.eachLayer(function(layer){
    layer.openPopup();
});

geojsonLayer.addTo(map);

你能解釋為什么這不起作用嗎?

暫無
暫無

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

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