Ver Mensaje Individual
  #5 (permalink)  
Antiguo 09/10/2009, 14:17
Avatar de josec89
josec89
 
Fecha de Ingreso: octubre-2009
Mensajes: 12
Antigüedad: 15 años, 4 meses
Puntos: 0
Sonrisa Respuesta: textarea extensible

ups!
El código no es compatible con el IE ... era de esperar, cámbialo por éste ^^. De paso quito el alert que era para hacer pruebas jaja

Código:
<textarea cols="53" rows="10" class="input" id="comentarios"style="overflow:hidden;" tabindex="5" onblur="checkRequired('comentarios');"></textarea>
<textarea id="textarea1" name="textarea" cols="10" rows="1"></textarea>

<script type="text/javascript">
   
    window.onload = function()
        {
            var txth = new textareaHandler;
            document.getElementById("textarea1").onkeydown = function(event) { txth.add(event) };
        }


    function textareaHandler()
    {
        this.chars = 0;
    }

    textareaHandler.prototype =
    {
        add: function(ev)
        {
            var event = false;
            var target = false;
       
            if(window.event)
                event = window.event;
            else
                event = ev;

            if(event)
            {
                if(event.target)
                    target = event.target;
                else
                    target = event.srcElement;

                if(event.keyCode != 13 && event.keyCode != 8 && event.keyCode != 46)
                    this.chars++;
                else if(event.keyCode == 13)
                    target.rows++;
               
                if(this.chars % 10 == 9)
                    target.rows++;
            }
        }
    };

</script>
Este código es compatible con los navegadores más comunes.

>Opera no hace salto de línea cuando llegas al máximo de filas, pero eso es que es un navegador que va muy a su bola (como IE).

Espero que te sirva ahora, un saludo ^^