Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/06/2010, 14:10
Avatar de _cronos2
_cronos2
Colaborador
 
Fecha de Ingreso: junio-2010
Mensajes: 2.062
Antigüedad: 13 años, 11 meses
Puntos: 310
Editor WYSIWYG

Hola gente, estoy haciendo un editor WYSIWYG muy sencillo (al margen del posible nuevo desafío) que me está dando problemas. La cuestión es que yo pongo un textarea para el texto y varios select para el tamaño o el color, y un checkbox para ver la vista previa o no; pero ni se ve la vista previa ni se ve el texto al final. Posteo el código para ver si localizan el error porque la consola de errores cada vez me dice una cosa diferente. Gracias de antemano.
Código Javascript:
Ver original
  1. <script type="text/javascript">
  2.  var color = document.getElementById('color');
  3.  var colorAct = color.options[color.selectedIndex].value;
  4.  var fondo = document.getElementById('fondo');
  5.  var fondoAct = fondo.options[fondo.selectedIndex].value;
  6.  var tamano = document.getElementById('tamano');
  7.  var tamanoAct = tamano.options[tamano.selectedIndex].value;
  8.  var texto  = document.getElementById('texto').value;
  9.  var final  = document.getElementById('textoFinal');
  10.  var vistaPrevia = document.getElementById('vistaPrevia');
  11.  var previo = document.getElementById('previa');
  12.  function edit(){
  13.   final.innerHTML = '<span style="color:' + color + '; background-color:' + fondo + '; font-size:' + tamano +';">' + texto + '</span>';
  14.  }  
  15.  function previa(){
  16.   vistaPrevia.innerHTML = '<span style="color:' + color + '; background-color:' + fondo + '; font-size:' + tamano +';">' + texto + '</span>';
  17.   if(previo.checked==true){
  18.    vistaPrevia.style.display = 'block';
  19.   }else{
  20.    vistaPrevia.style.display = 'none';
  21.   }
  22.  }
  23. </script>
Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3.  <head>
  4.   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  5.   <title>Editor WYSIWYG</title>
  6.  </head>
  7.  <body>
  8.   <form id='miForm' action='' method='post'>
  9.    &nbsp;Color:<br />
  10.    <select id='color' onchange="previa();">
  11.     <option value='#F00'>Rojo</option>
  12.     <option value='#0F0'>Verde</option>
  13.     <option value='#00F'>Azul</option>
  14.     <option value='#FF0'>Amarillo</option>
  15.     <option value='#F0F'>Magenta</option>
  16.     <option value='#0FF'>Cyan</option>
  17.    </select>
  18.    <br /><br />  
  19.    &nbsp;Fondo:<br />
  20.    <select id='fondo' onchange="previa();">
  21.     <option value='#F00'>Rojo</option>
  22.     <option value='#0F0'>Verde</option>
  23.     <option value='#00F'>Azul</option>
  24.     <option value='#FF0'>Amarillo</option>
  25.     <option value='#F0F'>Magenta</option>
  26.     <option value='#0FF'>Cyan</option> 
  27.     <option value='#FFF'>Blanco</option>
  28.     <option value='#000'>Negro</option>
  29.    </select>
  30.    <br /><br />
  31.    &nbsp;Tamaño:<br />
  32.    <select id='tamano' onchange="previa();">
  33.     <option value='14px'>Pequeña</option>
  34.     <option value='20px'>Mediana</option>
  35.     <option value='24px'>Grande</option>
  36.    </select>
  37.    <br /><br />
  38.    <input type="checkbox" id='previa' onclick='previa();' />Vista previa
  39.    <br /><br />
  40.    <textarea id='texto' cols='20' rows='10' onkeyup="previa();" onkeydown="previa();"></textarea>
  41.    <br /><br />
  42.    <div id='vistaPrevia' style='display:none;'></div>
  43.    <input type="button" value="Obtener texto" onclick='edit();' />
  44.   </form>
  45.   <div id='textoFinal'></div>
  46.  </body>
  47. </html>

Saludos (: