【问题标题】:Info window two layers polygon and marker信息窗口两层多边形和标记
【发布时间】:2016-03-14 00:33:08
【问题描述】:

我一直在使用融合表层向导。第一层是城市内带有标记的地图。第二个是这个城市的多边形。在新地图中,我只希望第一层的信息窗口工作。如何抑制多边形的信息窗口?代码如下:

<!DOCTYPE html>
<html>
  <head>
  <style>
    #map-canvas { width:500px; height:400px; }
    .layer-wizard-search-label { font-family: sans-serif };
  </style>
  <script type="text/javascript"
    src="http://maps.google.com/maps/api/js?sensor=false">
  </script>
  <script type="text/javascript">
    var map;
    var layer_0;
    var layer_1;
    function initialize() {
      map = new google.maps.Map(document.getElementById('map-canvas'), {
        center: new google.maps.LatLng(49.38240150737995, 11.039327819824182),
        zoom: 10,
        mapTypeId: google.maps.MapTypeId.ROADMAP
      });
      layer_0 = new google.maps.FusionTablesLayer({
        query: {
          select: "col1",
          from: "1MamWhdXCiB-m2Ak9gppNY9ZflBJsdGWvhSSR9NMB"
        },
        map: map,
        styleId: 3,
        templateId: 4
      });
      layer_1 = new google.maps.FusionTablesLayer({
        query: {
          select: "col8",
          from: "1Xr-majg8ib430CcbcPP3OR50Eoe3biu0cczlhw1Y"
        },
        map: map,
        styleId: 2,
        templateId: 2
      });
    }
    google.maps.event.addDomListener(window, 'load', initialize);
  </script>
  </head>
  <body>
    <div id="map-canvas"></div>
  </body>
</html>

【问题讨论】:

    标签: html google-maps-api-3 google-fusion-tables


    【解决方案1】:

    通过将“suppressInfoWindows: true”选项添加到您不希望有信息窗口的图层的 FusionTablesLayer 构造函数来禁用默认信息窗口。

    来自the documentation

    suppressInfoWindows |类型:布尔值

    在单击图层功能时抑制信息窗口的呈现。

    你还需要将多边形图层放在底部(先添加到地图中)。

    代码 sn-p:

    var map;
    var layer_0;
    var layer_1;
    
    function initialize() {
      map = new google.maps.Map(document.getElementById('map-canvas'), {
        center: new google.maps.LatLng(49.38240150737995, 11.039327819824182),
        zoom: 10,
        mapTypeId: google.maps.MapTypeId.ROADMAP
      });
      // polygons, no infowindow, put on bottom
      layer_1 = new google.maps.FusionTablesLayer({
        query: {
          select: "col8",
          from: "1Xr-majg8ib430CcbcPP3OR50Eoe3biu0cczlhw1Y"
        },
        map: map,
        suppressInfoWindows: true,
        styleId: 2,
        templateId: 2
      });
      // markers, infowindows, put on top
      layer_0 = new google.maps.FusionTablesLayer({
        query: {
          select: "col1",
          from: "1MamWhdXCiB-m2Ak9gppNY9ZflBJsdGWvhSSR9NMB"
        },
        map: map,
        styleId: 3,
        templateId: 4
      });
    }
    google.maps.event.addDomListener(window, 'load', initialize);
    html,
    body,
    #map-canvas {
      height: 100%;
      width: 100%;
      margin: 0px;
      padding: 0px
    }
    <script src="https://maps.googleapis.com/maps/api/js"></script>
    <div id="map-canvas"></div>

    【讨论】:

      猜你喜欢
      • 2013-03-03
      • 1970-01-01
      • 1970-01-01
      • 2012-10-16
      • 2016-03-28
      • 2011-10-15
      • 2018-04-02
      • 2018-03-11
      • 2016-07-09
      相关资源
      最近更新 更多