5

Drawing Library の Drawing Manager で作業していて、疑問が生じました。どんな助けでも大歓迎です。前もって感謝します。

質問: オブジェクト (マーカー、円など) が作成された後、どのように呼び出すのですか? 例として、マーカーを配置しました。私は今、それに情報ウィンドウを付けたいと思っています。情報ウィンドウを割り当てる関数では、配置したマーカーの「名前」が必要です。

さらに明確にする必要がある場合はお知らせください。

-セス

4

1 に答える 1

5

イベント リスナーを使用して、作成されたオブジェクト ( event.overlay) への参照を取得できます。このデモでは、作成されたマーカーは、マーカー自体に格納されたコンテンツで InfoWindow を開くように作成されます。

クリックしてマーカーを作成し、「手」アイコン モードに切り替えて、マーカーをクリックして InfoWindow を開きます。

  var markers = [];
  var infowindow = new google.maps.InfoWindow();

  function initialize() {
    map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
    drawingManager.setMap(map);
    google.maps.event.addListener(drawingManager, 'overlaycomplete', function(event) {
      if(event.type == google.maps.drawing.OverlayType.POLYLINE) {
        alert("polyline complete");
      }
      else if(event.type == google.maps.drawing.OverlayType.MARKER) {
        var newMarker = event.overlay;
        newMarker.content = "marker #" + markers.length;
        google.maps.event.addListener(newMarker, 'click', function() {
          infowindow.setContent(this.content);
          infowindow.open(map, this);
        });
        markers.push(newMarker);
      }
    });
  }
于 2012-06-13T18:23:31.837 に答える