JS: skryvani a odkryvani DIVu

Zdravim!

Potreboval bych udelat skryvani a odkryvani DIVu jednim tlacitkem:
Defaultne bude DIV skryty. Kliknutim na tlacitko, ktere k danemu DIVu patri by se mel div zobrazit. Po opetovnem kliknuti na toto same tlacitko by se mel DIV opet skryt.

Ovsem narazil jsem na problem. Nejak mi to ne a ne fungovat:

<SCRIPT>
function change_display(obj) {
if(typeof mode == 'undefined') mode = 1; //prvni spusteni
if(mode == 1) { //pokud chceme zobrazit
obj.style.display = ''; //zobrazime
mode = 0; //priste budem skryvat
}
if(mode == 0) { //pokud chcen skryt
obj.style.display = 'none';
mode = 1;
}
}
</SCRIPT>

<INPUT type="button" onclick="change_display(div_1)">

<DIV id="div_1" style="display: none;">
BAF!
</DIV>
Ak je mode rovné 0, vykoná sa podmienka if (mode == 0). Ale ak je mode rovné 1, vykoná sa if (mode == 1), kde sa nastaví mode na 0 a hneď za tým sa vykoná podmienka if (mode == 0), čím sa to znova skryje.

Takže pred if (mode == 0) patrí else.

A ešte aby to behalo aj inde než v IE, obsluha udalosti onclick bude vyzerať takto: change_display(document.getElementById('div_1'))

btw: celú funkciu change_display by som napísal takto:
function change_display (obj)
{
obj.style.display = (obj.style.display == "none"? "": "none");
}
>> obj.style.display = ''; //zobrazime

nema to byt nahodou: obj.style.display = "''; //zobrazime?
Zorro: to jsou imho dva apostrofy, což by mělo být stejně dobré jako dvě uvozovky ;-)
Pokud ho chceš mít opravdu skrytý a nepotřebuješ, aby ti dělal ve skrytém stavu místo, tak bych radil místo display použít visibility, je to rychlejší ;o)