在我们做项目的时候,肯定会遇到页面加载的性能优化,来是页面迅速渲染,不影响用户的体验,一下是我曾经针对tab页面引入的不同的js文件
需求:点击tab切换动态引入对应的js文件,重复点击的时候,则会判断是否有了该js文件,如果存在则不加载,如果没有则加载,废话不多说,上代码:
/*
* tab切换动态加载js
* 传递参数url即可,就是js的绝对路径,列如/home_www/ackhome_resources/js/groupManagement/userGroup.js
* commonSetting .loadScript("/home_www/ackhome_resources/js/groupManagement/userGroup.js", function() {
* userGroup.js文件中的函数功能
* })
*/
var commonSetting = function(){
return {
init:function(){
loadScript(url, callback) {
var script = document.createElement("script");
script.type = "text/javascript";
if (typeof(callback) != "undefined") {
if (script.readyState) {
script.onreadystatechange = function() {
if (script.readyState == "loaded" || script.readyState == "complete") {
script.onreadystatechange = null;
callback();
}
};
} else {
script.onload = function() {
callback();
};
}
};
script.src = url;
if($("script[src='"+url+"']").length <= 0){//未引用则引用
document.body.appendChild(script);
}else{
callback();
}
}
}
}
}()