基于jquery的动态加载css加载成功后调用函数


/**
* 加载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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值