Utworzyłem wyskakujące okienko z ulotką:
marker.bindPopup(content).openPopup();
Jak mogę content
później zaktualizować wartość?
Przypuszczam, że robię to z markera, coś takiego:
marker.updatePopup(newContent);
Przypuszczam, że chcesz zmienić treść po wystąpieniu jakiegoś zdarzenia, takiego jak najechanie myszą, menu kontekstowe lub cokolwiek innego.
Aby to zrobić, możesz użyć następującego kodu:
//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')
});
Jak widać, można uzyskać dostęp do wyskakującego okienka dla żądanego znacznika za pomocą metody marker._popup, a następnie użyć metody setContent, aby zmienić tekst w nim umieszczony.
Odwołanie do metody popup.setContent
Oto kod demonstrujący to w Plunker: http://plnkr.co/edit/vjS495QPXiJpKalrNpvo?p=preview
_popup
ma przed nim znak podkreślenia wskazujący, że jest to instancja prywatna / członkowska i nie należy uzyskiwać do niej bezpośredniego dostępu. Poprawnym interfejsem API jest Layer.setPopupContent () . na przykładmarker.setPopupContent(newContent);
źródło
Może być za późno, by odpowiedzieć, ale dla innych myślę, że najlepsze sposoby są tutaj
http://jsfiddle.net/cPTQF/
źródło
Możesz pobrać wyskakujące treści za pomocą:
Ustaw zawartość za pomocą:
źródło