javascript引导程序_Javascript教程-查字典教程网
javascript引导程序
javascript引导程序
发布时间:2016-12-30 来源:查字典编辑
摘要:1、网页在加载时,页面代码中的js文件引用(如下)都会向服务器产生http请求,因为在body.onload事件之前加载的文件(这里我称之为...

1、网页在加载时,页面代码中的js文件引用(如下)都会向服务器产生http请求,因为在body.onload事件之前加载的文件(这里我称之为静态加载文件)都会向服务器产生http请求。为了减少服务器的http请求,本人提倡每个页面最多只有一个js文件引用。

<script language='Javascript' type='text/Javascript' src='?.js'></script>

2、body.onload事件之后加载文件(这里我称之为动态加载文件)的时候,浏览器会先查找缓存文件,如果缓存文件不存在才会向服务器发出http请求;所以本人提倡动态加载文件,而在body.onload事件之前的静态加载文件应该做到精短。

3、本系统程序按照功能模块划分为单个文件,在/source/js/system.js中实现运行时按需下载,而不是恐怖的一次性下载所有脚本程序代码,减少网络带宽的占用。

4、为了让js代码跨网站调用时不会出现编码问题,程序中所有汉字用函数escape编码,如果只是单网站使用,您可以把编码改回汉字。

5、所有函数或类注明为“本网站自用”的,很可能与本网站后台自定义的数据类型有关,您可以将它删除。

下面是/js/Load.js程序以及的注释说明:

复制代码 代码如下:

var IsBody={};

//定义动态加载js程序文件的代码

eval("IsBody.AppendJs="+(IsBody.AppendJsCode="function(){var A=(typeof(arguments[0])=='string'?arguments:arguments[0]);for(var i=A.length-1;i>=0;i--){var J=document.createElement('script');J.language='javascript';J.type='text/Javascript';J.src=A[i];document.getElementsByTagName('head')[0].appendChild(J);}};"));

//测试document.body是否已经加载

IsBody.Try=function()

{

if(document.body&&((this.IsIE=(document.readyState!=null))?document.readyState.toLowerCase()=='complete':true))

{ //document.body加载后判断浏览器是IE还是FoxFire,本程序目前支持这两种浏览器

clearTimeout(this.Interval);

if(typeof(LoadCssFile)!='undefined')

{ //动态加载css文件,目的也是减少服务器的http请求(注意这里LoadCssFile是个数组)

var C=LoadCssFile,j=C.length,i=1;

while(i<j)

{

var J=document.createElement('link');J.rel='stylesheet';J.type='text/css';J.href=C[i++];document.getElementsByTagName('head')[0].appendChild(J);

}

}

//动态加载图片,目的也是减少服务器的http请求

if(typeof(LoadImage)!='undefined') this.AppendJs('/source/js/LoadImage.js');

//动态加载程序主体系统

this.AppendJs('/source/js/System.js');

}

};

IsBody.Interval=setInterval('IsBody.Try();',100);

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新Javascript教程学习
    热门Javascript教程学习
    编程开发子分类