$.each(scripts, function(){
if(!jsExist(this.src)){
var s = document.createElement("SCRIPT");
s.type = "text/javascript";
s.src = this.src;
document.body.appendChild(s);
}
});
用这种方式创建script标签,第一次进页面js里的中文显示正常,第二次进页面就发现乱码。
后来加了一句:
$.each(scripts, function(){
if(!jsExist(this.src)){
var s = document.createElement("SCRIPT");
s.type = "text/javascript";
s.src = this.src;
s.charset = 'gbk';
document.body.appendChild(s);
}
});
还是不对,然后就不知道怎么办,卡了很久。
后来发现s.charset = 'gbk';要写到s.src = this.src;前面,IE居然这么坑!
正确写法:
$.each(scripts, function(){
if(!jsExist(this.src)){
var s = document.createElement("SCRIPT");
s.type = "text/javascript";
s.charset = 'gbk';
s.src = this.src;
document.body.appendChild(s);
}
});