有没有办法不使用yepnope.injectJs方法而使用load方法将charset: "utf-8"注入到yepnope中?
yepnope({
load: newResourcesToBeLoaded,
complete: function() {
addNewlyLoadedResources(newResourcesToBeLoaded);
completeCallback();
}
});发布于 2012-08-17 04:11:07
这并不容易,但您可以使用过滤器来实现:
yepnope.addFilter(function (resourceObj) {
if (resourceObj.url.slice(-3) == ".js") {
resourceObj.attrs = resourceObj.attrs || {};
resourceObj.attrs["charset"] = "UTF-8";
}
return resourceObj;
});如果您遇到我遇到的任何问题,尽管这不会有什么帮助,但没有charset属性的脚本无论如何都应该提取文档的字符集(从Content-Type header或<meta charset>标记)。在加载定义了BOM (字节顺序标记)的UTF-8编码文件时,有些浏览器会出现问题,Firefox对我来说尤其明显。
此外,yepnope.js试图在非IE/Opera浏览器中加载脚本作为标签,显然,这是我所有问题的根源,最终使我改为使用LABjs。
https://stackoverflow.com/questions/10753629
复制相似问题