jquery 动态加载js文件出现的乱码

最近我在做项目的时候遇到了一个就是用jquery加载js文件的时候出现了乱码,然后我在firebug里面看到加载的js文件内容出现了乱码,然后我又打开对应的js文件看到里面js中文显示正常的,然后在网上找了一下资料说jquery加载js的时候默认是采用utf-8这种导致两边编码方式不一致出现的乱码。

所以我现在js中指定charset为gbk但是还是没有效果呀,然后我在网上找了一下资料终于发现好心的技术牛人分享了一个函数可以在加载js的时候指定编码函数我就分享出现了。

function loadJS(url,callback,charset)
  {
    var script = document.createElement('script');
    script.onload = script.onreadystatechange = function ()
    {
      if (script && script.readyState && /^(?!(?:loaded|complete)$)/.test(script.readyState)) return;
      script.onload = script.onreadystatechange = null;
      script.src = '';
      script.parentNode.removeChild(script);
      script = null;
      if(callback)callback();
    };
    script.charset=charset || document.charset || document.characterSet;
    script.src = url;
    try {document.getElementById("outOrder").appendChild(script);} catch (e) {}
  }

希望能够帮到与我遇到一样问题的人。

相关推荐