【发布时间】:2015-08-02 08:31:44
【问题描述】:
我正在使用 Fusion Layer 在谷歌地图中显示标记。
我想使用在地图上隐藏特定标记类型的按钮。例如,一个只会隐藏红色标记的红色按钮和一个只会隐藏绿色标记的绿色按钮。
我目前有 4 种标记类型,它们由从“类型”列获取数据的存储桶设置样式。
我尝试在自己的图层中显示每种标记类型,并单独隐藏图层。不幸的是 google 只允许你设置一个融合层的样式,所以我只能使用一个层来显示不同的标记类型。
如果我能弄清楚如何根据“类型”列定位标记,那么我可以隐藏特定的标记。
有人知道怎么做吗?
我的代码:
<script type="text/javascript">
function initialize() {
var myLatlng = new google.maps.LatLng(37.24,-121.9000);
var map = new google.maps.Map(document.getElementById('map-canvas'), {
center: myLatlng,
zoom: 11
});
var FMlayer = new google.maps.FusionTablesLayer({
query: {
select: 'Location',
from: '1zJo4YLRM5VVI_djqSV229FMNFyeGaHGrcczQMSHR',
},
templateId: 3,
styles: [{
where: 'Type = 1',
markerOptions: {
iconName: 'large_green'
}
},{
where: 'Type = 2',
markerOptions: {
iconName: 'large_red'
}
},{
where: 'Type = 3',
markerOptions: {
iconName: 'large_yellow'
}
},{
where: 'Type = 4',
markerOptions: {
iconName: 'large_blue'
}
}],
map: map,
});
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
我的桌子看起来像这样:
Type | Name | Location | Phone
1 | Name1 | Address1 | 555-555-5550
1 | Name2 | Address2 | 555-555-5551
2 | Name3 | Address3 | 555-555-5552
2 | Name4 | Address4 | 555-555-5553
3 | Name5 | Address5 | 555-555-5554
4 | Name6 | Address6 | 555-555-5555
标记“类型”决定了标记的样式。
【问题讨论】:
-
你的代码是什么样的?你的 FusionTable 是什么样子的?
-
我添加了我的代码和表格的样例。
标签: jquery google-maps google-maps-api-3 google-maps-markers google-fusion-tables