日期:2014-05-16  浏览次数:20409 次

引用外部JS文件的编码问题

昨天帮同事解决的一个问题,GBK的页面(不要问我为什么GBK,因为GBK,所以GBK),引用了Google map的API, 但是由于GoogleMap API返回的js脚本是utf-8的,所以导致在IE下, 浏览器无法正确解析.

这个问题,总的来说,可以用下图描述(原谅我的美术水平):

问题图

问题图

也就是, 由于服务器中生成的HTML是基于gbk编码的, 并且由于Apache的DefaultCharset(后叙), 所以导致IE会以gbk编码去解析从外部引入的GoogleMap js,那肯定是不能正确解释的.

浏览器判断一个页面的编码有俩个途径, 一种是通过HTTP响应头,