Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/464.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 单击多边形时无法使信息气泡弹出_Javascript_Html_Google Maps_Google Maps Api 3 - Fatal编程技术网

Javascript 单击多边形时无法使信息气泡弹出

Javascript 单击多边形时无法使信息气泡弹出,javascript,html,google-maps,google-maps-api-3,Javascript,Html,Google Maps,Google Maps Api 3,多边形显示良好,我在chrome中调试时没有看到任何错误。多边形的数据点正在c#代码中查询,但与此问题无关。当我点击多边形的js代码似乎火,但我没有得到任何信息泡沫。我将添加有关多边形的信息泡沫下一步,但需要首先让它弹出。任何帮助都将不胜感激 var map = new google.maps.Map(document.getElementById('map'), { zoom: 5, center: new goo

多边形显示良好,我在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);

            });


      <%} %>
var map=new google.maps.map(document.getElementById('map'){
缩放:5,
中心:新google.maps.LatLng(30.2979536,-97.7470835),
mapTypeId:google.maps.mapTypeId.ROADMAP
});
var路径=[];
var color=“”;
var shape=new google.maps.Polygon({
路径:路径,
strokeColor:颜色,
笔划不透明度:0.8,
冲程重量:2,
fillColor:color,
不透明度:0.35,
可点击:正确
});
setMap(map);
google.maps.event.addListener(形状,'右键单击',函数(事件){
var contentString=''+''测试'+'';
infowindow1=新的google.maps.InfoWindow();
infowindow1.setContent(contentString);
信息窗口1.打开(地图,本);
});

在多边形上打开信息窗口的关键在于理解它不同于在标记()上打开信息窗口:

您的代码:

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"? 
});
可能重复的
google.maps.event.addListener(poly,'click', function(event) {
  infowindow.setContent(contentString);
  infowindow.setPosition(event.latLng);
  infowindow.open(map);
});