Saya membuat popup dengan Leaflet melakukannya:
marker.bindPopup(content).openPopup();
Bagaimana saya bisa memperbarui content
nilai setelahnya?
Saya kira melakukannya dari marker, kira-kira seperti ini:
marker.updatePopup(newContent);
Saya kira Anda ingin kontennya diubah setelah beberapa peristiwa terjadi, seperti mouseover, contextmenu, atau apa pun.
Untuk melakukannya, Anda dapat menggunakan kode berikut:
//marker creation
var marker = L.marker([44.63, 22.65]).bindPopup('something').addTo(map);
marker.openPopup();
//changing the content on mouseover
marker.on('mouseover', function(){
marker._popup.setContent('something else')
});
Seperti yang Anda lihat, Anda dapat mengakses popup untuk marker yang diinginkan menggunakan metode marker._popup, dan kemudian menggunakan metode setContent untuk mengubah teks di dalamnya.
referensi metode popup.setContent
Berikut ini beberapa kode di Plunker yang menunjukkan ini: http://plnkr.co/edit/vjS495QPXiJpKalrNpvo?p=preview
_popup
memiliki garis bawah di depannya untuk menunjukkan bahwa itu adalah contoh pribadi / anggota, dan tidak boleh diakses secara langsung. API yang benar adalah Layer.setPopupContent () . misalnyamarker.setPopupContent(newContent);
sumber
Mungkin terlambat untuk menjawab, tetapi bagi yang lain, saya pikir cara terbaik ada di sini
http://jsfiddle.net/cPTQF/
sumber
Anda bisa mendapatkan konten sembulan dengan:
Atur kontennya dengan:
sumber