1

所以这是代码:

<script type="text/javascript" charset="UTF-8"> 
    function loadScript("http://www.qppstudio.net/individualdays/noscroll/2012-08-15.js") { 
        document.write('<script type="text/javascript" charset="UTF-8" src="', url, '">', '<', '/', 'script>'); 
    }   
</script>

包含在页眉中:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

页面显示 unicode 字符没有任何问题,预计发布的 javascript 写入页面的部分。脚本在不同域之间下载时是否以某种方式发生了变化?

4

1 回答 1

4

大概。这是我第一次看到这个charset属性。我不确定你想用它来达到什么目的。如果服务器向您发送带有iso-latin-1编码的文件,但您告诉浏览器该文件具有UTF-8编码,会发生什么?浏览器不会将文件从一种编码转换为另一种编码;您可能希望的最好结果是浏览器尝试将字节流解释为UTF-8不起作用。

正确的解决方案是配置服务器以在 HTTP 响应标头中发送具有正确编码的文件。浏览器将查找此信息并使用此处指定的编码读取字节流。

不要忘记以正确的编码实际发送字节!这意味着:文件读取、复制到输出流 + 设置编码头,一切都必须完美运行,否则你会遇到奇怪的错误。

于 2012-08-15T13:52:00.157 回答