web-dev-qa-db-ja.com

オプション付きのleafletjsマーカーbindpopup()

リーフレットのドキュメンテーションは、マーカーにポップアップを追加できることを示しています

marker.bindPopup("<b>Hello world!</b><br>I am a popup.").openPopup();

またはスタンドアロンのポップアップを作成します

var popup = L.popup()
    .setLatLng([51.5, -0.09])
    .setContent("I am a standalone popup.")
    .openOn(map);

ポップアップオプションを設定してマーカーにバインドする方法はありませんか?ポップアップに独自の最大幅を設定し、マーカーをクリックしたときにポップアップを開いたり閉じたりできるようにしたいのですが。

16
nexus_6

リーフレットのリファレンスドキュメント を読んでいますか?これは、ポップアップを作成して.bindPopupを呼び出すことにより、オプションでポップアップをバインドできることを指定します。例えば、

var popup = L.popup()
    .setContent("I am a standalone popup.");

marker.bindPopup(popup).openPopup();
10
tmcw

MaxWidthの場合、これを行う必要があります。

var popup = L.popup({
    maxWidth:400
});
marker.bindPopup(popup).openPopup();
4
Marko Letic

次のように、bindPopupの2番目の引数として popup options のオブジェクトを渡すことができます。

marker.bindPopup("<strong>Hello world!</strong><br />I am a popup.", {maxWidth: 500});

これはLeaflet 1.4でテストしましたが、以前のバージョンの bindPopup でも利用できるようです。

2
Richard Garside