Hola
Se me olvidaba que ya lo solucione. No edito el post anterior para que quede mas claro. Son unos cuantos cambios
Código javascript
:
Ver original<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html xmlns="http://www.w3.org/1999/xhtml"lang="es" xml:lang="es">
<head>
<meta name="http-equiv" content="Content-type: text/html; charset=UTF-8"/>
<script type="text/javascript">
var vuelta = 0;
var cadena = ""
var len = 0;
function Resaltar(c,ev) {
var largo_cadena = len;
var keyCode = document.layers ? ev.which : document.all ? event.keyCode : document.getElementById ? ev.keyCode : 0;
if (keyCode == 8) vuelta--;
if (vuelta < 1) {
cadena += document.getElementById("texto").firstChild.nodeValue;
}
var largo2_cadena = cadena.length
if (largo2_cadena >= largo_cadena) {len = largo_cadena;}
if (largo_cadena == 0) {len = largo2_cadena;}
var rg = new RegExp(c,"g");
if (rg.exec(cadena.substr(0,parseInt(len))) != null) {
var marca = cadena.substr(0,parseInt(len)).replace(rg, "<span style=\"background-color:#9ACD32;color:#FFFFFF;\">" + c + "</span>");
document.getElementById("texto").innerHTML = marca;
document.getElementById("terminos").style.border = "";
} else {
document.getElementById("texto").innerHTML = cadena;
document.getElementById("terminos").style.border = "solid #FF0000 1px";
}
vuelta++;
}
</script>
</head>
<body>
<div id="texto">Esto es una prueba para resaltar caracteres o palabras de este texto prueba</div>
<form method="" action="" name="" autocomplete="off">
<input type="text" value="" id="terminos" onkeyup="Resaltar(this.value,event);" />
</form>
</body>
</html>