为什么html中的不同EOL导致Safari中的javascript表现不同?

时间:2012-10-25 15:34:15

标签: javascript safari xmlhttprequest eol

我有两个相同的html文件(EOL字符除外 - 一个是LF,另一个是CRLF),我用它来加载XMLHttpRequest的2个音频文件。我不使用任何Web服务器(因为目的是在ipad中加载它并在没有任何Web服务器的情况下运行它) - 我只是使用Safari(对于Mac)打开它们。

令人难以置信的是,带有LF个结束符的文件能够很好地加载音频文件,但是CRLF的文件得到了:

Cross origin requests error (XMLHttpRequest cannot load file:///directories_to_files/cheer_and_clap.mp3. Cross origin requests are only supported for HTTP.)

您可以查看the files。我还没有在Safari for Windows版本上测试过。

p.loadBuffer = function(url, index) {
    var request = new XMLHttpRequest();
    console.log(url);
    request.open("GET", url, true);
    request.responseType = "arraybuffer";
        console.log(request);
    }
    request.onerror = function() {
        alert('BufferLoader: XHR error');
    }
    request.send();
}

为什么会发生这种情况的任何解释?

0 个答案:

没有答案