Domanda

Questo è il mio codice: (piuttosto, la parte malfamata di esso)

if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
    var requisicao=new XMLHttpRequest();
} else {
    var requisicao=new ActiveXObject("Microsoft.XMLHTTP");
}

Ok. A volte questo funziona bene, ma a volte il debugger JavaScript in IE mi dice questo:

  

L'oggetto non supporta questa proprietà o metodo model.js linea 59 caratteri 3

Il che equivale a ....

var requisicao=new XMLHttpRequest();

Quello che mi bug è il fatto che a volte IE 8 accetta questo e si muove su ma a volte soffoca e non funziona?

Ogni aiuto è benvenuto

Grazie in anticipo

È stato utile?

Soluzione

Modifica A quanto pare, in questo caso, il numero di riga di Internet Explorer siano corrette. Questo sembra essere un problema comune con Internet Explorer 8. C'è una potenziale soluzione qui: Ajax applicazione funziona in alcuni browers, non altri .

Questa è la parte rilevante del codice:

try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); }
catch (e) { try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); }
catch (e) { try { xmlhttp = new XMLHttpRequest(); }
catch (e) { xmlhttp = false; }}}

Purtroppo, i numeri di riga di Internet Explorer non sono sempre precisi, dal momento che si basano su una propria, la serializzazione interna del codice. Il messaggio di errore è probabilmente proviene da una diversa linea (vicino alla linea 59 si spera).

Vorrei verificare la presenza di luoghi dove si sta chiamando un metodo su un oggetto che potrebbe essere impostata su valori diversi per qualsiasi motivo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top