Hola,
Cita:
Iniciado por rodrypaladin ...
El problema surge en que si pego un texto en el text area, el usuario no ha generado ningún \n por lo cual no contabiliza ningún tipo de salto de linea.
...
Cita:
Iniciado por rodrypaladin ...
El problema surge en que si pego un texto en el text area, el usuario no ha generado ningún \n por lo cual no contabiliza ningún tipo de salto de linea.
Cita:
Iniciado por rodrypaladin con mis ids ha quedado así
Código Javascript
:
Ver originalfunction copypasteRaton() {
setTimeout(mostrarFilas, 0);
}
function mostrarFilas() {
var texto = document.getElementById("output").value;
var lineas = document.getElementById("oraciones");
if (texto.match(/(\r\n|\n|\r)[a-z0-9¿!\-\*]+/gi) == null) { lineas.innerHTML = 1; return; }
lineas.innerHTML = texto.match(/(\r\n|\n|\r)[a-z0-9¿!\-\*]+/gi).length+1;
}
pero pasa lo mismo, al pegar no cuenta el total de las lineas, sino solamente 1, y los enventos los he puesto en el textarea por supuesto
No creo que las vaya a contabilizar de esa forma, el problema, como indicaste al principio es que no hay saltos de línea, el navegador los calcula conforme sea necesario para no desplegar una barra de scroll horizontal.
Por ejemplo, en el parrafo anterior en este mismo mensaje no hay ningún salto de línea, yo nunca presioné la tecla enter, y el navegador no incrustó los saltos de línea tampoco. Simplemente cada vez que tiene que desplegar un texto vuelve a calcular en base al tamaño de letra y el kerning de la fuente la cantidad de líneas.
El algoritmo para calcular eso es realmente complejo basado en la métrica de la fuente que se está usando.
Pero posiblemente, como una base podrías usar algo así:
Aunque evidentemente no es exacto y las líneas están separadas por el caracter "|" al final aunque realmente es un vector.
http://jsfiddle.net/046jtcyz/
Saludos,
ps:
Por cierto, no es
aconsejable que insertes
los saltos de línea,
porque se miraría
como este parrafo
en una pantalla donde le
cabe mas texto. --> Allá arriba quedo un montón de espacio vacío seguramente.
O sino se miraría
de esta
forma donde hay
mucho
menos espacio
que el
original. --> Las líneas se cortaron tanto en donde no cabían como donde insertaste los saltos.