Foros del Web » Programando para Internet » Javascript »

Cambiar texto en un div

Estas en el tema de Cambiar texto en un div en el foro de Javascript en Foros del Web. Tengo este codigo. Código: <script type='text/JavaScript'> function verocultar(cual) { var c=cual.nextSibling; if(c.style.display=='none') { c.style.display='block'; } else { c.style.display='none'; } return false; } </script> <div align="center" ...
  #1 (permalink)  
Antiguo 18/04/2013, 05:30
 
Fecha de Ingreso: abril-2012
Ubicación: Madrid (España)
Mensajes: 162
Antigüedad: 12 años
Puntos: 5
Cambiar texto en un div

Tengo este codigo.

Código:
<script type='text/JavaScript'>
     function verocultar(cual) {
          var c=cual.nextSibling;
          if(c.style.display=='none') {
               c.style.display='block';
          } else {
               c.style.display='none';	  
          }
          return false;
     }
	 

</script>

<div align="center" id="link">
<a onClick="return verocultar(this);" href="javascript:void(0);">Desplegar Texto Oculto</a>
<div style="display: none;" align="justify">
<h3>....Aqui el texto Oculto...</h3>
</div>
en el cual el id llamado "link" Tiene el texto "Desplegar Texto Oculto" y quiero que cada vez que el texto oculto salga, Cambie el texto de ese mismo div por "Ocultar Texto Oculto".

Por si no me he explicado bien: EJ:

Antes de Pulsarlo:

Desplegar Texto Oculto

Despues de Pulsarlo:

Ocultar Texto Oculto
....Aqui el texto Oculto...

le estoy dando mil vueltas y de momento lo mas parecido que he conseguido es esto.

Código:
<script type='text/JavaScript'>
     function verocultar(cual) {
          var c=cual.nextSibling;
          if(c.style.display=='none') {
               c.style.display='block';
			   document.getElementById('link').innerHTML = "<a onClick='return verocultar(this);' href='javascript:void(0);'>Contraer</a>";
          } else {
               c.style.display='none';
			   document.getElementById('link').innerHTML = "<a onClick='return verocultar(this);' href='javascript:void(0);'>Desplegar</a>";
          }
          return false;
     }
	 

</script>
El problema es que si pongo eso el texto oculto no se muestra, no se como continuar.
  #2 (permalink)  
Antiguo 18/04/2013, 05:42
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Cambiar texto en un div

Prueba así:
Código Javascript:
Ver original
  1. function verocultar(cual) {
  2.     var c=cual.nextSibling;
  3.     if(c.style.display=='none') {
  4.         c.style.display='block';
  5.         cual.innerHTML = "Contraer";
  6.     } else {
  7.         c.style.display='none';
  8.         cual.innerHTML = "Desplegar";
  9.     }
  10.     return false;
  11.  }
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 19/04/2013, 00:10
 
Fecha de Ingreso: abril-2012
Ubicación: Madrid (España)
Mensajes: 162
Antigüedad: 12 años
Puntos: 5
Respuesta: Cambiar texto en un div

Muchas gracias, lo estoy probando y si que despliega y contrae pero no cambia el texto del div.
  #4 (permalink)  
Antiguo 19/04/2013, 00:14
 
Fecha de Ingreso: abril-2012
Ubicación: Madrid (España)
Mensajes: 162
Antigüedad: 12 años
Puntos: 5
Respuesta: Cambiar texto en un div

Miento, si que funciona, no habia actualizado con los cambios.

Pregunta, es muy complicado que evalue variables con este codigo?

me explico, cada div tiene un ID diferente dependiendo de ese div el texto será diferente.

Ej:

Div 1: Desplegar Texto 1
Div 2: Desplegar Texto 2
Div 3: Desplegar Texto 3


imagino que seria algo como a cada variable asignarle un texto pero como pregunto por el nombre del div?
  #5 (permalink)  
Antiguo 19/04/2013, 04:35
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Cambiar texto en un div

Lo más sencillo sería que agregues un parámetro a la función con el cual puedas especificar cuál es el texto que hay que poner en los enlaces.

De otra forma, también puedes recorrer el DOM (usar parentNode por ejemplo) para obtener información del div.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #6 (permalink)  
Antiguo 22/04/2013, 02:46
 
Fecha de Ingreso: abril-2012
Ubicación: Madrid (España)
Mensajes: 162
Antigüedad: 12 años
Puntos: 5
Respuesta: Cambiar texto en un div

no sabria como hacer lo que dices de agregarle a la funcion esa opción.
  #7 (permalink)  
Antiguo 22/04/2013, 06:10
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Cambiar texto en un div

Puedes mostrar al menos qué has intentado y así te indicaremos dónde está mal.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.

Etiquetas: html
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:51.