Internet Explorer эквивалент для загрузки текстового файла в JavaScript - PullRequest
2 голосов
/ 12 мая 2009

Я хочу загрузить некоторые дополнительные данные из JavaScript на странице HTML. Приведенное ниже решение является небольшим и делает именно то, что мне нужно сделать в браузерах не Microsoft.

Вопрос в том, что эквивалентно Microsoft Explorer. Обратите внимание, что загружаемые данные не в формате XML. Я также не хочу добавлять библиотеку javascript - я хочу, чтобы эта страница загружалась быстро даже при коммутируемом подключении.


var client = new XMLHttpRequest();
client.open('GET', 'gamedata.txt');
client.onreadystatechange = function() {
    if (client.readyState == 4) {
        alert(client.responseText); // Make sure its loaded
    }
}

client.send("");

Ответы [ 2 ]

5 голосов
/ 12 мая 2009

Из-за смешанной поддержки XMLHttpRequest () в различных версиях IE, вам нужно перепрыгнуть через несколько обручей, чтобы запрос работал. (В частности, IE5 и IE6 используют ActiveXObject для XMLHttpRequest.)

Я всегда использовал исправление этой страницы для браузеров IE :

function ajaxFunction() {
    var xmlhttp;
    if (window.XMLHttpRequest) {
        // code for IE7+, Firefox, Chrome, Opera, Safari
        xmlhttp = new XMLHttpRequest();
    }
    else if (window.ActiveXObject) {
        // code for IE6, IE5
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
    else {
        alert("Your browser does not support XMLHTTP!");
    }
}
0 голосов
/ 12 мая 2009
if (window.XMLHttpRequest) {
    var client = new XMLHttpRequest();
} else if(window.ActiveXObject) {
    var client = new ActiveXObject('Microsoft.XMLHTTP');
} else {
    alert('Your browser does not support XMLHttpRequest object');
}
if (typeof client.overrideMimeType != 'undefined') {
    client.overrideMimeType('text/xml');
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...