首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >想要切换从2个不同的融合表生成的图层

想要切换从2个不同的融合表生成的图层
EN

Stack Overflow用户
提问于 2012-06-28 01:09:10
回答 1查看 744关注 0票数 0

我有这个JavaScript代码。我想要两个按钮在地图上。1表示打开layer_2,other表示打开layer_1。一旦任何一个按钮被点击,另一个层应该关闭。此外,layer_1需要是默认的,并且应该在地图打开时显示。在任何情况下,这些层都不应该重叠。

代码语言:javascript
复制
var map;
var layer_1;
var layer_2;
var tableid_1 = 3775630;
var tableid_2 = 4313734;
var queryUrlHead = 'http://www.google.com/fusiontables/api/query?sql=';
var queryUrlTail = '&jsonCallback=?';

function initialize(col_list, order_list) {
var latlng = new google.maps.LatLng(33.7071,-111.3024);

map = new google.maps.Map(document.getElementById('map_canvas'), {
    center: latlng,
    zoom: 7,
    mapTypeId: google.maps.MapTypeId.TERRAIN,
    mapTypeControl: true,
    mapTypeControlOptions: {
    style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR,
    position: google.maps.ControlPosition.TOP_LEFT
},
    scaleControl: true,
    scaleControlOptions: {
    position: google.maps.ControlPosition.BOTTOM_LEFT
},

});

var layer_2 = new google.maps.FusionTablesLayer(4313734);
layer_2.setMap(map);

var layer_1 = new google.maps.FusionTablesLayer(3775630);
layer_1.setMap(map);
layer_1.enableMapTips({
        select: "'Name'",
        from: tableid_1,
        geometryColumn: 'Location', 
        suppressMapTips: false, 
        delay: 50,
        tolerance: 5
});
    addListeners();

}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-06-28 04:20:27

在初始化函数中删除下面这一行:

代码语言:javascript
复制
layer_2.setMap(map);

在初始化函数之外创建此函数。

代码语言:javascript
复制
function toggleLayer(this_layer){
        layer_1.setMap(null);
        layer_2.setMap(null);
        this_layer.setMap(map);
}

创建一些按钮:

代码语言:javascript
复制
<input type="button" value="Turn on Layer 1" onClick="toogleLayer(layer_1);">
<input type="button" value="Turn on Layer 2" onClick="toogleLayer(layer_2);">

更新:一个真正的toogle应该是这样的:

代码语言:javascript
复制
function toggleLayer(this_layer){
   if(this_layer.getMap(){
     this_layer.setMap(null);
   }else{
     this_layer.setMap(map);
   }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11231570

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档