作家
登录

用JS实现的一个include函数

作者: 来源:www.28hudong.com 2013-03-30 03:22:39 阅读 我要评论

很多语言都有类似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下没有反应,但在Mozilla Firefox 下就会让你原来的网页消失,只显示document.write出来的内容:mad: 嘿嘿,对于这个问题,我自然有妙招: 就是重定义 document.write方法,让他不显示任何东西。具体做法: 在 include_js 之前加上这句 document.write = function () { return false;} 这样,就算include过来的js文件含有document.write方法我们也不怕它破坏网页了!:lol::lol: 用途: 本函数可以用于一些广告和统计的js文件异步加载,避免了因加载js文件而造成的网页显示速度慢的问题。 将此函数修改一下便可以动态加载css文件,不过用处就没有加载js文件的大。 复制代码 代码如下:function include_js(path,reload) { var scripts = document.getElementsByTagName("script"); if (!reload) for (var i=0;i<scripts.length;i++) if (scripts[i].src && scripts[i].src.toLowerCase() == path.toLowerCase() ) return; var sobj = document.createElement('script'); sobj.type = "text/javascript"; sobj.src = path; var headobj = document.getElementsByTagName('head')[0]; headobj.appendChild(sobj); }

  推荐阅读

  dsfasdfasdf

asdfasdfsadf>>>详细阅读


本文标题:用JS实现的一个include函数

地址:http://www.17bianji.com/kaifa2/JS/30258.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)