1

ポリゴンは正常に表示され、Chromeでデバッグしてもエラーは表示されません。ポリゴンのデータポイントはc#コードでクエリされていますが、この問題には関係ありません。ポリゴンをクリックすると、jsコードが起動するように見えますが、情報バブルが表示されません。次にポリゴンに関する情報を情報バブルに追加しますが、最初にポリゴンをポップアップさせることから始める必要があります。どんな助けでもいただければ幸いです!

var map = new google.maps.Map(document.getElementById('map'), {
                    zoom: 5,
                    center: new google.maps.LatLng(30.2979536, -97.7470835),
                    mapTypeId: google.maps.MapTypeId.ROADMAP
             });

    <%for(int i = 0; i < this.zips2.Count; ++i )%>
    <%{ %>
        <%if ( layerType == "Orders" )
        { 
            GetOrderColor(zips3[i]); 
        } 
        else 
        { 
            GetAptColor(zips3[i]);  
        } %>

        var paths = [<%=zips2[i]%>];
            var color = "<%=color%>";

            var shape = new google.maps.Polygon({
            paths: paths,
            strokeColor: color,
            strokeOpacity: 0.8,
            strokeWeight: 2,
            fillColor: color,
            fillOpacity: 0.35,
            clickable: true
            });


            shape.setMap(map);


            google.maps.event.addListener(shape, 'rightclick', function(event) {

            var contentString = '<div id="content:">' + "Test" + '</div>';
             infowindow1 = new google.maps.InfoWindow();
             infowindow1.setContent(contentString);
             infowindow1.open(map, this);

            });


      <%} %>
4

1 に答える 1

3

ポリゴンでinfoWindowを開くための鍵は、マーカー( google.maps.InfoWindow)でinfoWindowを開くこととは異なることを理解することです。

あなたのコード:

google.maps.event.addListener(shape, 'rightclick', function(event) {
   var contentString = '<div id="content:">' + "Test" + '</div>';
   infowindow1 = new google.maps.InfoWindow();
   infowindow1.setContent(contentString);
   infowindow1.open(map, this);  // <--- what is "this"? 
});

あなたのコードの「これ」は何ですか?位置をエクスポートするのはMVCオブジェクトですか?google.maps.Polygonはそうではありません。

その例からの私のコード:

google.maps.event.addListener(poly,'click', function(event) {
  infowindow.setContent(contentString);
  infowindow.setPosition(event.latLng);
  infowindow.open(map);
}); 
于 2013-02-13T22:00:59.940 に答える