Hi,
ich vermute mal, dass das hier dafür verantwortlich ist:
if(document.getElementById(id).style.display=="none")
Das Element wird standardmßig nicht den wert display:none im style haben.
Alternativ kannst du mit getComputedStyle arbeiten. Oder überprüfen ob
document.getElementById(id).offsetWidth === 0 ist.
Gruß!