/**
* 加载css样式
* @param style 样式的地址
* @param stamp 样式的时间戳
* @param callback 成功之后的处理函数
*/
function __loadStyle(style, stamp, callback){
var stamp = stamp||(new Date() - 0);
if(!window.__STYLES){
window.__STYLES = [];
}
if($.inArray(style, window.__STYLES) == -1){
var obj = document.createElement("link");
$('<link rel="stylesheet" href="' + style + "?t=" + stamp + '" type="text/css"/>');
obj.setAttribute("rel", "stylesheet");
obj.setAttribute("href", style + "?t=" + stamp);
obj.setAttribute("type", "text/css");
$(obj).bind('load', function(){
window.__STYLES.push(style);
if(callback instanceof Function){
callback();
}
});
$('head').get(0).appendChild(obj);
}else{
if(callback instanceof Function){
callback();
}
}
}
jquery下动态加载脚本,getScript函数可以实现加载js,其原理是ajax获取到js代码之后eval代码;如果有跨域则使用动态载入脚本(script标签)
KindEditor的loadStyle函数可以加载css,但是没有成功之后的回调
直接使用$('link')在ie下样式加载貌似会出错,故使用createElement