手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >用JS实现的一个include函数
用JS实现的一个include函数
摘要:很多语言都有类似php中的include和require功能的函数,而唯独javascript没有。很早就想在js中实现类似的功能,尝试了很...

很多语言都有类似php中的include和require功能的函数,而唯独javascript没有。

很早就想在js中实现类似的功能,尝试了很多次都没有成功,那天在google上搜索一些关于动态加载css文件的关键词时,发现一个blog(地址找不到了)上的一个为网页的head标签增加link元素的函数,于是就改了一下,写了这个函数。

用法:

include_js(src,[reload]);

src:js文件的路径名

reload:可选参数,0或1,表示是否重复加载同一个url的js文件。

说明:

当包含的js文件中有document.write方法时,在IE下没有反应,但在MozillaFirefox下就会让你原来的网页消失,只显示document.write出来的内容:mad:

嘿嘿,对于这个问题,我自然有妙招:

就是重定义document.write方法,让他不显示任何东西。具体做法:

在include_js之前加上这句

document.write=function(){returnfalse;}

这样,就算include过来的js文件含有document.write方法我们也不怕它破坏网页了!:lol::lol:

用途:

本函数可以用于一些广告和统计的js文件异步加载,避免了因加载js文件而造成的网页显示速度慢的问题。

将此函数修改一下便可以动态加载css文件,不过用处就没有加载js文件的大。

复制代码 代码如下:

functioninclude_js(path,reload)

{

varscripts=document.getElementsByTagName("script");

if(!reload)

for(vari=0;i<scripts.length;i++)

if(scripts[i].src&&scripts[i].src.toLowerCase()==path.toLowerCase())return;

varsobj=document.createElement('script');

sobj.type="text/javascript";

sobj.src=path;

varheadobj=document.getElementsByTagName('head')[0];

headobj.appendChild(sobj);

}

【用JS实现的一个include函数】相关文章:

Javascript实现div层渐隐效果的方法

js实现带按钮的上下滚动效果

js实现鼠标移到链接文字弹出一个提示层的方法

jQuery实现返回顶部效果的方法

用JavaScript实现对话框的教程

JavaScript中eval函数的问题

js实现一个链接打开两个链接地址的方法

jQuery实现给页面换肤的方法

总结一些js自定义的函数

javascript实现Table排序的方法

精品推荐
分类导航