我正在使用融合表API来设计地图样式。但是在传说中,一些国家(乌干达和莫桑比克)没有显示图例中显示的正确颜色。
以下是显示图例的代码
<style type="text/css">
#legend {
background-color: #FFF;
margin: 10px;
padding: 5px;
width: 150px;
}
#legend p {
font-weight: bold;
margin-top: 3px;
}
#legend div {
clear: both;
}
.color {
height: 12px;
width: 12px;
margin-right: 3px;
float: left;
display: block;
}
#map-canvas{
width: 700px;
height: 650px;
}
</style>
显示地图的代码
function initialize() {
var map = new google.maps.Map(document.getElementById('map-canvas'), {
center: new google.maps.LatLng(-2.358937, 27.618881),
zoom: 4,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
var layer = new google.maps.FusionTablesLayer({
query: {
select: 'geometry',
from: '1MXudMo9A8yUjpO89hkac74LzGEKPyA_tDzkWJ3hl'
}
});
layer.setMap(map);
initSelectmenu();
for (column in COLUMN_STYLES) {
break;
}
applyStyle(map, layer, column);
addLegend(map);
google.maps.event.addDomListener(document.getElementById('selector'),
'change', function() {
var selectedColumn = this.value;
applyStyle(map, layer, selectedColumn);
updateLegend(selectedColumn);
});
}
答案 0 :(得分:1)
列'Total No of Points'
已设置为Text
类型,比较将基于不会产生预期结果的字符串。
简单测试:
alert('9'>'10');//true
alert(9>10);//false
解决方案:将列的类型设置为Number