De una web he sacado este codigo, en la misma web hay un ejemplo y funciona, pero a mi no me funciona y no se donde esta el error.
El codigo hace que cada x caracteres consecutivos agrega un espacio.
<script language="Javascript">
//Controlador de palabras largas
//verifica que la cadena no sea una dirección de e-mail
// verifica que no sea una url
//en caso de usarse para unos foros verifica...
//que la cadena no sea código para insertar una imagen
//script por tunait! http://javascript.tunait.com/
function pepe(texto2,donde){
var palabrota = 10
function cPalabrasLargas(texto2,donde){
pLink = /^\[url[=]?[\w\*":.\/]*\][\w\*":.\/\[\]]+\[\/url\]$/
pImagen = /^\[img?(=left)?(=right)?\][\w:".\/]*\[\/img(=left)?(=right)?\]$/
pUrl = /^https?:\/\/[\w\.]+/
pCodigo = /^<[\w\."\'$\(\)\= #\?&%@\[\]\;]+>$/
pCodigo2 = /="[\w\.:\/\-"\+\=\?\&\#%@$'\(\)\[\]\;]+"/
pMail = /^[\w\_\.çñ]{2,255}@[\w]{2,255}\.[a-z]{1,3}\.?[a-z]{0,3}$/
palabras = texto2.split(/\s/)
largo = palabras.length
for(m=0;m<largo;m++){
if(palabras[m].length > palabrota){
if (pLink.test(palabras[m])){continue}
if (pImagen.test(palabras[m])){continue}
if (pUrl.test(palabras[m])){continue}
if (pCodigo.test(palabras[m])){continue}
if (pCodigo2.test(palabras[m])){continue}
if (pMail.test(palabras[m])){continue}
texto3=palabras[m].substr(0,palabrota)+" "
for(h=palabrota;h<palabras[m].length;h+=palabrota){
texto3+=palabras[m].substr(h,palabrota)
}
texto2=texto2.replace(palabras[m],texto3)
donde.value=texto2
pepe(texto2,donde)
//*************************************************
}
}
}
</script>
<textarea onblur="cPalabrasLargas(this.value,this)" name="mensaje" cols="50" rows="6"></textarea>
Gracias a tod@s de antemano