Вы передаете polygn
var в вашу функцию, поэтому она будет скрывать только последний (тот, который содержит этот var).В вашем цикле вы помещаете их все в массив polyprojectgoogle
, так что эту переменную вы должны передать и выполнить цикл для всех элементов внутри него.Примерно так (я позволил себе переименовать функцию с «s», чтобы она соответствовала ее новой функциональности, и изменить имя параметра, чтобы оно не совпадало с именем функции):
function toggleLayers(layers,id)
{
var i, l = layers.length;
if ($('#'+id).is(':checked')) {
for(i = 0; i < l; i++){
layers[i].setMap(map);
}
}
else
{
for(i = 0; i < l; i++){
layers[i].setMap(null);
}
}
}
и назовите это так:
<input id="cbx" type="checkbox" class="invisible" onClick="toggleLayers(polyprojectgoogle,'cbx')">