Ver Mensaje Individual
  #50 (permalink)  
Antiguo 19/07/2011, 12:58
Avatar de Kudsick
Kudsick
 
Fecha de Ingreso: julio-2011
Ubicación: Mexico D.F.
Mensajes: 32
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Ocultar texto, pulsar boton y mostrarlo

Cita:
Iniciado por Aijoona Ver Mensaje
Definí las variables usando el var, caso contrario estás creando globales implicitas.

Código Javascript:
Ver original
  1. // Mal
  2. function mostrar(enla) {
  3.     obj = document.getElementById('oculto'+enla);
  4.     obj.style.visibility = (obj.style.visibility == 'hidden') ? 'visible' : 'hidden';
  5. }
  6.  
  7. // Bien
  8. function mostrar(enla) {
  9.     var obj = document.getElementById('oculto'+enla);
  10.     obj.style.visibility = (obj.style.visibility == 'hidden') ? 'visible' : 'hidden';
  11. }
Ok, lo probe y no me funciono, pero he llegado a la solucion al estar probando lo que me dijiste, explico:

yo tenia esto:
Código:
<script>
function mostrar(enla) {
obj = document.getElementById('oculto'+enla);
obj.style.visibility = (obj.style.visibility == 'hidden') ? 'visible' : 'hidden';
}
</script> 


<a href="#" onclick="mostrar('1'); return false" /><center><span style="color:white"><strong>Saludo</strong></a>

<div id="oculto1" style="visibility:hidden">
Aqui va mi texto que oculto...</div>

<a href="#" onclick="mostrar('2'); return false" /><center><span style="color:white"><strong>Manejo de beneficios.</strong></a>

<div id="oculto2" style="visibility:hidden">Mi otro texto para ocultar...</div>
La cuestion aqui es que defini mal style="visibility:hidden" debia ser style="display:none" tanto en mi <script> como en mi <div> una vez cambiado todos mis divs sin problema me funcionó, pongo como lo deje:

Código:
<script>
function mostrar(enla) {
obj = document.getElementById('oculto'+enla);
obj.style.display = (obj.style.display == 'block') ? 'none' : 'block';
}
</script>


<a href="#" onclick="mostrar('1'); return false" /><center><span style="color:white"><strong>Saludo</strong></a>

<div id="oculto1" style="display:none">Aqui mi texto a esconder</div>
Con esto queda solucionado mi problema ahora mis enlaces esconden el texto y lo que no se esconde sube automaticamente, muchas gracias por la ayuda aunque no me haya funcionado con tu codigo me ayudo para detectar mi error. Gracias! un abrazo.