Funcion visualiza JAVA- Abrir y cerrar div pulsando encima de "enlace" - onclick

Hola a todos de nuevas (seguro que me contesta Skaparate ;)). Tengo un problema que se supondría sencillo, pero no tengo ni idea de java y lo poco que he encontrado funciona, pero no me sirve del todo:
<style type="text/css">
.oculto{display:none;}
</style>
<script>
var visible_actual=false;
function visualiza(id)
{if(visible_actual){document.getElementById(visible_actual).style.display='visisble';}
 visible_actual=id;
 document.getElementById(visible_actual).style.display='block';}

</script>


<div onclick="javascript:visualiza('div_01');">mostrar 01</div>
<div id="div_01" class="oculto">Este texto aparecerá después como "01"</div>
<div onclick="javascript:visualiza('div_02');">mostrar 02</div>
<div id="div_02" class="oculto">Este texto aparecerá después como "02"</div>
<div onclick="javascript:visualiza('div_03');">mostrar 03</div>
<div id="div_03" class="oculto">Este texto aparecerá después como "03"</div>

Con esto, pincho encima de "mostrar 01" y se muestra 01, se queda abierto, perfecto. Ahora quiero que al pinchar en el mismo, se cierre. He intentado probar al "tuntun" sin tener ni idea el crear una función:
var visible_despues=true
 function cierra(id)
 {if(visible_despues){document.getElementById(visible_despues).display='none';}
 visible_actual=id;
 document.getElementById(visible_despues).style.display='block';}

Pero ni de cerca, no consigo nada. A ver si alguien me lo puede solucionar!
Muchas gracias de antemano.
Un saludo!
Pues ya está hecho, no he terminado usando el código que me has dado, pero me ha ayudado bastante a avanzar. Tienes toda la razón sobre jQuery, no me hice el cursillo y he estado investigando las distintas functions.
De nuevo, gracias!.