Ver Mensaje Individual
  #3 (permalink)  
Antiguo 26/03/2013, 02:48
giancarlos92
 
Fecha de Ingreso: marzo-2013
Mensajes: 5
Antigüedad: 11 años, 1 mes
Puntos: 0
Respuesta: Mostrar y Ocultar una parte de un div contenteditable y dar foco

Hola emprear, disculpa por no haber sido más específico. Lo que deseo es que si en la primera línea, alguien le da click al texto en gris (#AAAAAA), entonces desaparezca el texto gris de dicha línea(lo cual ya esta), ahora si en ese momento deseo saltar o irme a otra línea, por ejemplo si no escribí nada en la primera línea y me voy a la segunda línea (le doy click), entonces me vuelva a aparecer lo que estaba escrito en gris en la primera línea, además me desaparezca lo gris de la 2da línea y quede el foco en la 2da línea parte gris.
Y así con cada div o línea de forma independiente. He intentado guardar el texto de cada span en la función que llama el onload y luego llamar al onblur en cada span para reponer su texto cuando esté fuera o en otra línea, pero no me sale.

No quiero que me reponga todo el texto gris del textarea, solo que me reponga de aquel span en el que no haya escrito nada y solo cuando esté fuera del foco.

Necesito que esta pequeña página sirva como guía a chicos que seguirán unos pasos Paso1, Paso2, etc, los cuales pueden saltearse. Pero esos espacios gris son editables, por lo que no quiero que el texto se reponga si ya han escrito algo en determinada línea.

Si deseas alguna info adicional o no me expliqué bien me avisan. Gracias por tu tiempo.

He puesto el código más simple, ya que solo quiero la idea y yo me las arreglo con el resto:

Código HTML:
Ver original
  1. <!DOCTYPE html>
  2.     <title></title>
  3.     <meta charset="utf-8">
  4.     <style type="text/css">
  5. #textarea {
  6.     -moz-appearance: textfield-multiline;
  7.     -webkit-appearance: textarea;
  8.     border: 2px solid gray;
  9.     font: medium -moz-fixed;
  10.     font: -webkit-small-control;
  11.     height: 300px;
  12.     overflow: auto;
  13.     padding: 2px;
  14.     resize: both;
  15.     width: 1050px;
  16. }
  17. span.aaa{
  18. color: #AAAAAA;
  19. }
  20. <script language="javascript">
  21. var texto_original;
  22. function validaclick(sel){
  23. var seleccionado=sel;
  24. sel.innerHTML="";
  25. document.getElementById('textarea').focus();
  26. }
  27.  
  28. window.onload = function(){
  29. texto_original = document.getElementById('textarea').innerHTML;
  30. }
  31. </head>
  32.     <div align="left">
  33.     <div id="textarea" align="left" contenteditable onblur="this.innerHTML= texto_original;";>
  34.     <div>Paso 1:&nbsp;<span class="aaa" onclick="validaclick(this)">Texto guía 1</span></div>
  35.     <div>Paso 2:&nbsp;<span class="aaa" onclick="validaclick(this)">Texto guia 2</span></div>
  36.     <div>Paso 3:&nbsp;<span class="aaa" onclick="validaclick(this)">Texto guia 3</span></div>
  37.     </div>
  38.     </div>
  39. </body>
  40. </html>