Foros del Web » Programando para Internet » Javascript »

error document.all en mozilla

Estas en el tema de error document.all en mozilla en el foro de Javascript en Foros del Web. Hola, necesito ayuda estoy creando un test donde me dieron el codigo, lo que hice fue duplicarlo para que salgan dos test en una misma ...
  #1 (permalink)  
Antiguo 22/03/2012, 05:51
 
Fecha de Ingreso: marzo-2012
Mensajes: 2
Antigüedad: 12 años
Puntos: 0
error document.all en mozilla

Hola, necesito ayuda estoy creando un test donde me dieron el codigo, lo que hice fue duplicarlo para que salgan dos test en una misma pantalla, he renombrado los formularios para que funcionen, he logrado que funcione en los navegadores menos en el mozilla y me sale error document.all.undefined, he leido que el document.all no funciona con el mozilla pero he visto que el codigo original si funciona, quisiera saber si el error lo produce por haberlo dupplicado que salga en la misma pantalla no he podido solucionarlo ni quitando el document.all y no se con que reemplazarlo si me pudieran ayudar lo agradeceria mucho, adjunto el codigo que tengo un saludo

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<!-- DW6 -->
<head>
<link href="oneColFixCtrHdr.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
.Estilo1 {
font-size: 19px;
color: #333333;
}
body,td,th {
font-family: calibri;
}
.Estilo2 {
color: #0000FF
}
a:visited {
text-decoration: none;
color: #0000FF;
}
.Estilo3 {color: #FF0000}
a:link {
text-decoration: none;
}
a:visited {
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
a:active {
text-decoration: none;
}
.Estilo11 {
color: #0000FF;
font-weight: bold;
padding-left: 100px;
}
.ejemplo {
color: #FF0000;
font-weight: bold;
}
.celdas {
}
-->
</style>
<script language="javascript">
<!--


Correcto = new Image();
Correcto.src = "imagenes/check-micuenta.png";
Mal = new Image();
Mal.src = "imagenes/croix.png";



function Correccion() {

var respuesta_correcta_procesada=new
Array("GRANDE","SYMPA","BLEU","DIFFICILE","SYMPA") ;

var respuesta_correcta=new
Array("grande","sympa","bleu","difficile",
"sympa");

var num_aciertos = 0;


for (var i=0; i<5; i++){

respuesta=document.Preguntas.elements[i].value;
respuesta=respuesta.replace(/ /g,"");
respuesta=respuesta.replace(/´/g,"'");
respuesta=respuesta.toUpperCase();

respuesta=respuesta.replace(/'M/g,"AM");
respuesta=respuesta.replace(/'RE/g,"ARE");
respuesta=respuesta.replace(/'S/g,"IS");
respuesta=respuesta.replace(/'LL/g,"WILL");
respuesta=respuesta.replace(/'D/g,"WOULD");
respuesta=respuesta.replace(/'VE/g,"HAVE");
respuesta=respuesta.replace(/N'T/g,"NOT");
respuesta=respuesta.replace(/WON'T/g,"WILLNOT");


document.all.res[i].innerHTML="<span class=solucion>"+respuesta_correcta[i]+"</span>";


if (respuesta==respuesta_correcta_procesada[i]) {
document.images[i+1].src = Correcto.src;
num_aciertos++ ;
}
else {
document.images[i+1].src = Mal.src;
}

}

document.all.aciertos.innerHTML="<span class=resultado><b>"+num_aciertos+"</b> Respuestas Correctas</span>";
}

// -->
</script>

<script language="javascript">
<!--


Correcto1 = new Image();
Correcto1.src = "imagenes/check-micuenta.png";
Mal1 = new Image();
Mal1.src = "imagenes/croix.png";



function Correccion1() {

var respuesta_correcta_procesada1=new
Array("GRANDE","SYMPA","BLEU","DIFFICILE","SYMPA") ;

var respuesta_correcta1=new
Array("grande","sympa","bleu","difficile",
"sympa");

var num_aciertos1 = 0;


for (var i=0; i<5; i++){

respuesta1=document.Preguntas1.elements[i].value;
respuesta1=respuesta1.replace(/ /g,"");
respuesta1=respuesta1.replace(/´/g,"'");
respuesta1=respuesta1.toUpperCase();

respuesta1=respuesta1.replace(/'M/g,"AM");
respuesta1=respuesta1.replace(/'RE/g,"ARE");
respuesta1=respuesta1.replace(/'S/g,"IS");
respuesta1=respuesta1.replace(/'LL/g,"WILL");
respuesta1=respuesta1.replace(/'D/g,"WOULD");
respuesta1=respuesta1.replace(/'VE/g,"HAVE");
respuesta1=respuesta1.replace(/N'T/g,"NOT");
respuesta1=respuesta1.replace(/WON'T/g,"WILLNOT");


document.all.res1[i].innerHTML="<span class=solucion1>"+respuesta_correcta1[i]+"</span>";


if (respuesta1==respuesta_correcta_procesada1[i]) {
document.images[i+7].src = Correcto1.src;
num_aciertos1++ ;
}
else {
document.images[i+7].src = Mal1.src;
}

}

document.all.aciertos1.innerHTML="<span class=resultado1><b>"+num_aciertos1+"</b> Respuestas Correctas</span>";
}

// -->
</script>
  #2 (permalink)  
Antiguo 22/03/2012, 09:23
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: error document.all en mozilla

¡buenas!
document.all no es un objeto estándar. muy pocos navegadores lo reconocen y solo por mantener compatibilidad con los script que fueron desarrollados para el navegador que lo soporta, o sea iexplorer. tienes que cambiar la forma en que hace referencia a los elementos por uno más estándar, por ejemplo getElementById.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 22/03/2012, 10:53
 
Fecha de Ingreso: marzo-2012
Mensajes: 2
Antigüedad: 12 años
Puntos: 0
Respuesta: error document.all en mozilla

Gracias por tu repuesta,
Ya lo he intentado cambiando document.all por document.getElementById y tampoco funciona incluso ni en ie, repito que este codigo o sea el del primer formulario funciona correctamente pero al haberlo duplicado es donde no funciona he cambiado los id para diferenciarlos y nada no se si esta funcion tenga algo que ver es donde me pierdo por completo

<script type="text/javascript">
/* <![CDATA[ */
(function(){try{var s,a,i,j,r,c,l=document.getElementsByTagName("a"),t =document.createElement("textarea");for(i=0;l.leng th-i;i++){try{a=l[i].getAttribute("href");if(a&&"cloudflare.com/email-protection"==a.substr(7 ,31)){s='';j=44;r=parseInt(a.substr(j,2),16);for(j +=2;a.length-j&&a.substr(j,1)!='X';j+=2){c=parseInt(a.substr(j, 2),16)^r;s+=String.fromCharCode(c);}j+=1;s+=a.subs tr(j,a.length-j);t.innerHTML=s.replace(/</g,"&lt;").replace(/>/g,"&gt;");l[i].setAttribute("href","mailto:"+t.value);}}catch(e) {}}}catch(e){}})();
/* ]]> */
</script>
<script type="text/javascript">
/* <![CDATA[ */
(function(){try{var s,a,i,j,r,c,l=document.getElementsByTagName("a"),t =document.createElement("textarea1");for(i=0;l.len gth-i;i++){try{a=1[i].getAttribute("href");if(a&&"cloudflare.com/email-protection"==a.substr(7 ,31)){s='';j=44;r=parseInt(a.substr(j,2),16);for(j +=2;a.length-j&&a.substr(j,1)!='X';j+=2){c=parseInt(a.substr(j, 2),16)^r;s+=String.fromCharCode(c);}j+=1;s+=a.subs tr(j,a.length-j);t.innerHTML=s.replace(/</g,"&lt;").replace(/>/g,"&gt;");l[i].setAttribute("href","mailto:"+t.value);}}catch(e) {}}}catch(e){}})();
/* ]]> */
</script>

como ves lo he duplicado no donde esta el error
gracias

Etiquetas: formulario, funcion, html, mozilla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:22.