首页 > 解决方案 > Javascript XMLHttpRequest 在 IE 9 上不起作用

问题描述

我做了这个适用于 IE10 及更高版本的脚本。它也适用于 Opera、Chrome、Firefox。

function trackid() {
    var client = new XMLHttpRequest();
    client.open('GET', 'https://radio.riddimdub.com/playing.txt');
    client.onreadystatechange = function() {
        var trackName = client.responseText;
        document.getElementsByClassName("tracktitle")[0].innerHTML = trackName;
    };
    client.send()
};
trackid();
setInterval(trackid, 5000);

现在我对其进行了一些更改以使其适用于 IE9。我这样做了:

function trackid() {
    var client = new XMLHttpRequest();
    client.open('GET', 'https://radio.riddimdub.com/playing.txt');
    client.send()
    if (client.readyState === client.DONE) {
        var trackName = client.responseText;
        document.getElementsByClassName("tracktitle")[0].innerHTML = trackName;
    }
};
trackid();
setInterval(trackid, 5000);

问题是我在 IE9 上的控制台和 Opera 上都没有错误,但它在两者上都不起作用。

值得一提的是,我也尝试过:

try {
} finally {
}

是不是我做错了什么?

标签: javascriptinternet-explorer

解决方案


我做到了。感谢您的信息。就是这样:

function trackid() {
    var client = new XMLHttpRequest();
    client.open('GET', 'https://radio.riddimdub.com/playing.txt');
    client.onreadystatechange = function() {
        if (client.readyState === client.DONE) {
            var trackName = client.responseText;
            document.getElementsByClassName("tracktitle")[0].innerHTML = trackName;
        }
    }
    client.send()
};
trackid();
setInterval(trackid, 5000);

推荐阅读