0
由於5個融合表圖層和5個樣式的融合表層的限制,我必須嘗試它:使用5個融合表圖層和每個人使用兩種風格,然後我可以達到我的目的:在地圖中顯示10種不同的風格。如果我們向兩個圖層添加不同的樣式,融合表不能顯示兩個圖層
但是我實現後,我發現它只顯示第一個融合表層。
然後我寫了一個測試用例來檢查爲什麼。並發現: 如果我們在兩層設置樣式,只有第一層可以顯示,第二層不見了。如果我爲一個圖層設置樣式,則效果很好。
下面是我的代碼,有人可以幫忙嗎?現在只顯示一個圖層。如果我們爲它們或其中一個註釋風格設置,則可以顯示這兩個圖層。
在此先感謝!
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<style type="text/css">
html { height: 100% }
body { height: 100%; margin: 0px; padding: 0px }
#top-box {padding: 10px; background-color:#336699;}
.para-line {font-weight:bold;}
#map_canvas { height: 100% }
</style>
<script type="text/javascript"src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script type="text/javascript">
var map;
function initialize() {
map = new google.maps.Map(document.getElementById("map_canvas"));
map.setMapTypeId('roadmap');
map.setCenter(new google.maps.LatLng(38.4985464, -98.3834298));
map.setZoom(4);
var tableid1 = 4436842;
var style = [{
where: "State in('IL','PA')",
polygonOptions:
{
fillColor: "#rrggbb",
fillOpacity: 0.7
}
},{
where: "State in('AL')",
polygonOptions:
{
fillColor: "#006400",
fillOpacity: 0.7
}
}
];
var query1 = {
select: ['geometry','name'],
from: tableid1,
where: "State in('IL','PA')"
}
var query2 = {
select: ['geometry','name'],
from: tableid1,
where: "State in('AL')"
}
var layer1 = new google.maps.FusionTablesLayer({
query:query1,
styles: style,
suppressInfoWindows: false,
clickable:true
});
layer1.setMap(map);
var layer2 = new google.maps.FusionTablesLayer({
query:query2,
styles:style,
suppressInfoWindows: false,
clickable:true
});
layer2.setMap(map);
return;
}
</script>
</head>
<body onload="initialize()">
<div id="map_canvas" style="width:100%; height:100%"></div>
</body>
</html>
得到它。我沒有意識到這一點。 – yonghua