当我重新打开图层时,我的谷歌地图重新加载(并重新居中)

时间:2014-08-18 13:42:14

标签: javascript google-maps

我正在为社区项目构建谷歌地图,而且每次重新打开图层时,我都会遇到麻烦,弄清楚为什么我的地图重新居中(并且显然会重新加载)。任何关于为什么会发生这种情况的见解都非常感激。

在此处查看地图:http://www.northerntechnomics.com/lmantzel/googlemap/maptest12.html

如果你打开侧栏并取消选中一个图层,然后移动地图并再次检查图层,你会看到我的意思。

我如何显示图层:

HTML(检查或取消选中触发器check()函数)

     <ul>
        <li><a href='#'><label><input type="checkbox" id="Trail" checked="checked" onclick="check()" />Hub Trail</label></a></li>
        <li><a href='#'><label><input type="checkbox" id="Markers" checked="checked" onclick="check()" />Markers</label></a></li>
        <li class='last'><a href='#'><label><input type="checkbox" id="Slider" checked="checked" onclick="check()" />Image Slider</label></a></li>
    </ul>

的Javascript

    function check() 
        {
            if(document.getElementById('Trail').checked)
              {TrailLayer.setMap(map);}
            else 
              {TrailLayer.setMap(null);}    

            if(document.getElementById('Markers').checked)
            {
                MarkerVisibility = true;
                for (var i = 0; i < gmarkers.length; i++)
                {
                    gmarkers[i].setVisible(true);
                }
            }
            else 
            {
                MarkerVisibility = false;
                for (var i = 0; i < gmarkers.length; i++)
                {
                    gmarkers[i].setVisible(false);
                }
                if (infowindow) infowindow.close();
            }
            if(document.getElementById('Slider').checked)
            {
                document.getElementById('imageSlider').style.display = 'block';
            }

            else 
            {
                 document.getElementById('imageSlider').style.display = 'none';
            }
        }

取消选中并检查任何图层会导致地图在检查或取消选中时重新加载。没有重新启动地图的代码。我知道其他人已经能够在没有这些问题的情况下进行分层,请在我重新编码之前帮助我!

*通过查看页面来源可以看到完整代码。

1 个答案:

答案 0 :(得分:1)

你的&#39;层&#34;是google.maps.KmlLayer个对象。

var TrailLayer = new google.maps.KmlLayer({
                    url: 'http://www.northerntechnomics.com/lmantzel/googlemap/Trail5.kml'

                  });

如果您不希望它们自动缩放并居中显示内容,请使用preserveViewport:true option

相关问题