JavaScript - Por que no funciona en Chrome y en Ie8 si??

   
Vista:
Imágen de perfil de miguel

Por que no funciona en Chrome y en Ie8 si??

Publicado por miguel (17 intervenciones) el 09/10/2017 21:50:03
Hola tengo este buscador de palabras que no entiendo por que no funciona en Chrome y en Ie8 si, soy nuevo en javascript asi que no se si alguna funcion ya esta desactualizada o etc....


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
<Html>
  <Head>
     <Title>Botón de Busqueda</Title>
  </Head>
 
<Body>
 
<script language="JavaScript">
 
var NS4 = (document.layers);
var IE4 = (document.all);
var win = window; // Con frames usar top.nombre.window;
var n = 0;
 
function BuscarPalabras(str)
    {
        var txt, i, found;
        if (str == "")
        return false;
 
        if (NS4) {
        if (!win.find(str))
           while(win.find(str, false, true))
           n++;
        else
           n++;
 
        // No se encuentra en ninguna parte y envia un mensaje.
        if (n == 0)
           alert("Not found. ");
        }
 
        if (IE4) {
           txt = win.document.body.createTextRange();
           // Encuentra la coinsidencia desde el inicio de pagina.
            for (i = 0; i <= n && (found = txt.findText(str)) != false; i++) {
                txt.moveStart("character", 1);
                txt.moveEnd("textedit");
            }
 
        // Si lo encuentra, marca el resultado y mueve la barra de desplazamiento
        // para mostrarlo.
        if (found) {
           txt.moveStart("character", -1);
           txt.findText(str);
           txt.select();
           txt.scrollIntoView();
           n++;
        }
        // De otra manera regresa al inicio de la página para buscar otra coinsidencia
        else {
           if (n > 0) {
            n = 0;
            BuscarPalabras(str);
             }
           // No se encuentra en ninguna parte envia un mensaje.
           else
            alert("Not found.");
             }
        }
        return false;
}
</script>
 
 
<Form Name="search" onSubmit="return BuscarPalabras(this.string.value);">
      <Font Size=2>
            <Input Name="string" Type=Text Size=15 onChange="n = 0;">
            <Input Type="submit" Value="BUSCAR">
      </Font>
</Form>
 
<Br><Br>
 
<Font Face=Arial Size=2>
<P>
Escribe la palabra que desees buscar dentro de esta página en el cuadro de texto y presiona el botón BUSCAR.</P>
Escribe la palabra que desees buscar dentro de esta página en el cuadro
 
</Body>
</Html>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de ScriptShow

Por que no funciona en Chrome y en Ie8 si??

Publicado por ScriptShow (500 intervenciones) el 10/10/2017 12:43:11
Saludos Miguel,

Prueba así:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
<Html>
<Head>
<Title>Botón de Busqueda</Title>
</Head>
<Body>
<script language="JavaScript">
var NS4 = (document.getElementById);
var IE4 = (document.all);
var win = window; // Con frames usar top.nombre.window;
var n = 0;
 
function BuscarPalabras(str) {
var txt, i, found;
if (str == "")
return false;
 
if (NS4) {
if (!win.find(str))
while(win.find(str, false, true))
n++;
else
n++;
// No se encuentra en ninguna parte y envia un mensaje.
if (n == 0)
alert("Not found. ");
}
 
if (IE4) {
txt = win.document.body.createTextRange();
// Encuentra la coinsidencia desde el inicio de pagina.
for (i = 0; i <= n && (found = txt.findText(str)) != false; i++) {
txt.moveStart("character", 1);
txt.moveEnd("textedit");
}
// Si lo encuentra, marca el resultado y mueve la barra de desplazamiento
// para mostrarlo.
if (found) {
txt.moveStart("character", -1);
txt.findText(str);
txt.select();
txt.scrollIntoView();
n++;
}
// De otra manera regresa al inicio de la página para buscar otra coinsidencia
else {
if (n > 0) {
n = 0;
 
BuscarPalabras(str);
}
// No se encuentra en ninguna parte envia un mensaje.
else
alert("Not found.");
}
}
return false;
}
</script>
 
<Font Face="Arial" Size="2">
<Form Name="search" onSubmit="return BuscarPalabras(this.string.value)">
<Input Name="string" Type="ext" Size="15" onChange="n = 0;">
<Input Type="submit" Value="BUSCAR">
</Form>
</Font>
 
<Br><Br>
 
<Font Face="Arial" Size="2">
<P>Escribe la palabra que desees buscar dentro de esta página en el cuadro de texto y presiona el botón BUSCAR.</P>
 
Escribe la palabra que desees buscar dentro de esta página en el cuadro
</Font>
</Body>
</Html>

Espero sea útil.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
Imágen de perfil de miguel

Por que no funciona en Chrome y en Ie8 si??

Publicado por miguel (17 intervenciones) el 10/10/2017 13:55:24
Funciona en chrome pero ya no en IE8 jaja :/ que mala suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

Por que no funciona en Chrome y en Ie8 si??

Publicado por xve (2048 intervenciones) el 10/10/2017 15:51:06
Hola Miguel, pero IE8 es un navegador muy antiguo, no? hay gente que lo este utilizando?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de miguel

Por que no funciona en Chrome y en Ie8 si??

Publicado por miguel (17 intervenciones) el 11/10/2017 19:04:56
Aunque no lo creas en algunas multinacionales aun siguen usando IE8
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de ScriptShow

Por que no funciona en Chrome y en Ie8 si??

Publicado por ScriptShow (500 intervenciones) el 11/10/2017 10:46:34
A ver esta otra:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
<Html>
<Head>
<Title>Botón de Busqueda</Title>
<script language="JavaScript">
var NS4 = (!document.all);
var IE4 = (document.all);
var win = window; // Con frames usar top.nombre.window;
var n = 0;
 
function BuscarPalabras(str) {
var txt, i, found;
if (str == "")
return false;
if (NS4) {
if (!win.find(str))
while(win.find(str, false, true))
n++;
else
n++;
// No se encuentra en ninguna parte y envia un mensaje.
if (n == 0)
alert("Not found. ");
}
 
if (IE4) {
txt = win.document.body.createTextRange();
// Encuentra la coinsidencia desde el inicio de pagina.
for (i = 0; i <= n && (found = txt.findText(str)) != false; i++) {
txt.moveStart("character", 1);
txt.moveEnd("textedit");
}
 
// Si lo encuentra, marca el resultado y mueve la barra de desplazamiento
// para mostrarlo.
if (found) {
txt.moveStart("character", -1);
txt.findText(str);
txt.select();
txt.scrollIntoView();
n++;
}
// De otra manera regresa al inicio de la página para buscar otra coinsidencia
else {
if (n > 0) {
n = 0;
 
BuscarPalabras(str);
}
// No se encuentra en ninguna parte envia un mensaje.
else
alert("Not found.");
}
}
return false;
}
</script>
</Head>
<Body>
<Font Face="Arial" Size="2">
<Form Name="search" onSubmit="return BuscarPalabras(this.string.value)">
<Input Name="string" Type="text" Size="15" onChange="n = 0;">
<Input Type="submit" Value="BUSCAR">
</Form>
</Font>
<Br><Br>
<Font Face="Arial" Size="2">
<P>Escribe la palabra que desees buscar dentro de esta página en el cuadro de texto y presiona el botón BUSCAR.</P>
Escribe la palabra que desees buscar dentro de esta página en el cuadro
</Font>
</Body>
</Html>

Un cordial saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Revisar política de publicidad