Javascript 用于打开/关闭KML层的函数

Javascript 用于打开/关闭KML层的函数,javascript,html,google-maps-api-3,Javascript,Html,Google Maps Api 3,这是我第一次在这里发帖。我是Javascript或谷歌地图API的新手。我有一个带有一个KML图层的地图,我想创建一个复选框,在单击时打开或关闭图层。我在网上看到了很多例子,但在我的应用程序中似乎什么都不起作用。代码如下: (function() { window.onload = function() { var options = { center: new google.maps.LatLng(44.65, 22.64), zoom: 10,

这是我第一次在这里发帖。我是Javascript或谷歌地图API的新手。我有一个带有一个KML图层的地图,我想创建一个复选框,在单击时打开或关闭图层。我在网上看到了很多例子,但在我的应用程序中似乎什么都不起作用。代码如下:

(function() {
window.onload = function() {

    var options = {
        center: new google.maps.LatLng(44.65, 22.64), 
        zoom: 10, 
        mapTypeId: google.maps.MapTypeId.TERRAIN,
        mapTypeControl: true,
        mapTypeControlOptions: {
            mapTypeIds: [
                google.maps.MapTypeId.HYBRID,
                google.maps.MapTypeId.SATELLITE,
                google.maps.MapTypeId.TERRAIN
            ]       
        },
        streetViewControl: false
    };

    var map = new google.maps.Map(document.getElementById('map'), options);

    var kmlUrl = 'http://googledrive.com/host/0B55_4P6vMjhITEU4Ym9iVG8yZUU/trasee.kml';
        var kmlOptions = {
        suppressInfoWindows: false,
        preserveViewport: false,
    };

    var trasee = new google.maps.KmlLayer(kmlUrl, kmlOptions).setMap(map);

}
})();
我不知道要创建什么函数来切换图层的可见性,尽管我在HTML文件中创建了一个复选框:

<input type="checkbox" id="straturi" onClick="togglefunction()" />

你能给我一些建议吗

致以最良好的祝愿,
Alexandru

切换函数应该类似于

var toggleKml=function(layer) {
    if(layer.getMap()===null) {
        layer.setMap(map)
    } else {
        layer.setMap(null)
    }
};
它需要在与map和trasee相同的上下文中定义,否则它将看不到这些对象。在您的例子中,您可以使用trasee作为参数来调用它

toggleKml(trasee);

你的意思是,我的答案有效还是你找到了另一种方法?是的,我用过你的功能。