Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.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_Google Maps_Checkbox - Fatal编程技术网

Javascript 当用户点击谷歌地图网站时,是否可能已经勾选了复选框?

Javascript 当用户点击谷歌地图网站时,是否可能已经勾选了复选框?,javascript,google-maps,checkbox,Javascript,Google Maps,Checkbox,我已经创建了一个带有多个复选框的谷歌地图,用户可以在这些图层上来回切换。当前,当用户打开地图时,图层已打开,复选框未选中。如何更改代码,以便在用户打开地图时选中复选框并打开图层(然后用户可以取消选中复选框以删除图层)。基本上:如果选中,则显示图层。如果未选中,则不显示图层 我的网站: 我的Javascript代码: var map, layer2, layers; layers = []; function initialize() { var ontario = new google.

我已经创建了一个带有多个复选框的谷歌地图,用户可以在这些图层上来回切换。当前,当用户打开地图时,图层已打开,复选框未选中。如何更改代码,以便在用户打开地图时选中复选框并打开图层(然后用户可以取消选中复选框以删除图层)。基本上:如果选中,则显示图层。如果未选中,则不显示图层

我的网站:

我的Javascript代码:

var map, layer2, layers;
layers = [];
function initialize() {
    var ontario = new google.maps.LatLng(49.2867873, -84.7493416);

var mapOptions = {
        zoom: 5,
        center: ontario,
styles: [{"featureType":"landscape.natural","elementType":"geometry.fill","stylers":[{"visibility":"on"},{"color":"#e0efef"}]},{"featureType":"poi","elementType":"geometry.fill","stylers":[{"visibility":"on"},{"hue":"#1900ff"},{"color":"#c0e8e8"}]},{"featureType":"road","elementType":"geometry","stylers":[{"lightness":100},{"visibility":"simplified"}]},{"featureType":"road","elementType":"labels","stylers":[{"visibility":"off"}]},{"featureType":"transit.line","elementType":"geometry","stylers":[{"visibility":"on"},{"lightness":700}]},{"featureType":"water","elementType":"all","stylers":[{"color":"#7dcdcd"}]}]
    }

    var infoWindow = new google.maps.InfoWindow();
    var openInfoWindow = function (KMLevent) {
        infoWindow.close();
        infoWindow.setOptions(
        {
            content: KMLevent.featureData.infoWindowHtml,
            position: KMLevent.latLng,
            pixelOffset: KMLevent.pixelOffset
        });
        infoWindow.open(map);
    };

     map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);

    var kmlOptions = {
        suppressInfoWindows: true,  // do not to display an info window when clicked
        preserveViewport: false,
        map: map
    };



  //Layer 0 is NDP       
         layers [0] = new google.maps.KmlLayer('https://docs.google.com/uc?authuser=0&id=0B79b02nBK5vkRGo1RlpVVW4td1k&export=download',
 {preserveViewport: false, suppressInfoWindows: true});
      //Layer 1 is Liberal    
        layers [1] = new google.maps.KmlLayer('https://docs.google.com/uc?authuser=0&id=0B79b02nBK5vkdXd6aWFZc05uaWM&export=download',
 {preserveViewport: false, suppressInfoWindows: true});
        //Layer 2 is PC1 
        layers [2] = new google.maps.KmlLayer('https://docs.google.com/uc?authuser=0&id=0B79b02nBK5vkYjhLenRqVWVuR0U&export=download',
 {preserveViewport: false, suppressInfoWindows: true});
// Layer 3 PC2
        layers [3] = new google.maps.KmlLayer('https://docs.google.com/uc?authuser=0&id=0B79b02nBK5vkSlJZSDR2MzBOY1E&export=download',
 {preserveViewport: false, suppressInfoWindows: true});

        //Layer 4 PC3
        layers [4] = new google.maps.KmlLayer('https://docs.google.com/uc?authuser=0&id=0B79b02nBK5vkSjNrck1MZmMydlE&export=download',
 {preserveViewport: false, suppressInfoWindows: true});
        //layer 5 Schools
        layers [5] = new google.maps.KmlLayer('https://docs.google.com/uc?authuser=0&id=0B79b02nBK5vkajc2OGZTZDZBV0k&export=download',
 {preserveViewport: false, suppressInfoWindows: true});


  for (var i = 0; i < layers.length; i++) {
        layers[i].setMap(null);
      }



    layer2 = new google.maps.FusionTablesLayer({
    query: {
      select: 'col9',
      from: '1FzRSqRcxY37i7VtejqONHhAB-MrzFhakYSvZaIvo'
    }
  });
  layer2.setMap(map);

   // Pop-up window
    layers.forEach(function(url) {
        var layer = new google.maps.KmlLayer(url, kmlOptions);
        layer.setMap(map);
        google.maps.event.addListener(layer, "click", openInfoWindow);

    });

}


function toggleLayer(i) {
  if (layers[i].getMap() === null) {
    layers[i].setMap(map);
  }
  else {
    layers[i].setMap(null);
  }
}

//initialize();
google.maps.event.addDomListener(window, 'load', initialize);
checked=“checked”
添加到所有复选框中,如下所示:

<input type="checkbox" id="layer0" onclick="toggleLayer(0)" checked="checked">NDP <br>
NDP
checked=“checked”
添加到所有复选框中,如下所示:

<input type="checkbox" id="layer0" onclick="toggleLayer(0)" checked="checked">NDP <br>
NDP

我这样做了,但当我取消选中复选框时,图层仍然显示(事实上,它们高亮显示)我正在试验代码,我意识到如果我在弹出窗口的“代码”部分进行注释,图层会随着我单击复选框而打开或关闭。但是,我需要mapI中的弹出窗口,但当我取消选中复选框时,图层仍然显示(事实上,它们高亮显示)我正在试验代码,我意识到如果我在弹出窗口代码部分注释,则在单击复选框时,图层会打开或关闭。但是,我需要mapI中的弹出窗口,但当我取消选中复选框时,图层仍然显示(事实上,它们高亮显示)我正在试验代码,我意识到如果我在弹出窗口代码部分注释,则在单击复选框时,图层会打开或关闭。但是,我需要地图中的弹出窗口
<input type="checkbox" id="layer0" onclick="toggleLayer(0)" checked="checked">NDP <br>