我有一个包含3层图层的Google地图。
放大地图时会出现这些内容。
以下是代码 - https://jsfiddle.net/djz43usz/
//county level
if(zoom_level >= 7) {
clearRegion();
marker_point = country_center;
id = c_id;
area_type="COUNTY";
mark_center();
layer = new google.maps.FusionTablesLayer({
query: {
select: '\'geometry\'',
from: '1fio1qgy5HkinUDKqYvREIlSoBaHjl2RBe3DLJa38'
},
styles: [{
polygonOptions: {
fillColor: '#000000',
fillOpacity: 0.001
}
},{
where: "'GEO_ID2' IN ("+draw_str.toString()+")",
polygonOptions: {
fillOpacity: 0.3
}
}]
});
layer.setMap(map);
}
});
地区和州运作良好。但对于县而言,融合层并不起作用。无论如何我能解决它吗?
这就是现在的样子:
答案 0 :(得分:0)
如果我查看javascript控制台,我会看到:Failed to load resource: the server responded with a status of 413 ()
。问题是draw_str
字符串太长(长度为17555个字符)。在这一行:
where: "'GEO_ID2' IN ("+draw_str.toString()+")",
polygonOptions: {
fillOpacity: 0.3
}
您需要减小查询字符串的大小(以使网址最大值为2048)。
proof of concept fiddle(显示图层)