用JavaScript动态加载CSS和JS文件
2015-12-18 17:45
851 查看
今天项目中需要用到动态加载 CSS 文件,经过一番折腾终于搞定,回家整理了一下,顺便融合了动态加载 JS 的功能写成了一个对象,先上代码:
对象包含两个完全独立的方法,分别用来加载 CSS 文件和 JS 文件,参数均为欲加载的文件路径。原理非常的简单:对于不同的加载文件类型创建不同的节点,然后添加各自的属性,最后扔到 head 标签里面。经测试,本方法兼容各浏览器,安全、无毒、环保,实乃 web 开发人员工作常备代码,请放心使用。
下面是调用代码,异常简单:
var dynamicLoading = { css: function(path){ if(!path || path.length === 0){ throw new Error('argument "path" is required !'); } var head = document.getElementsByTagName('head')[0]; var link = document.createElement('link'); link.href = path; link.rel = 'stylesheet'; link.type = 'text/css'; head.appendChild(link); }, js: function(path){ if(!path || path.length === 0){ throw new Error('argument "path" is required !'); } var head = document.getElementsByTagName('head')[0]; var script = document.createElement('script'); script.src = path; script.type = 'text/javascript'; head.appendChild(script); } }
对象包含两个完全独立的方法,分别用来加载 CSS 文件和 JS 文件,参数均为欲加载的文件路径。原理非常的简单:对于不同的加载文件类型创建不同的节点,然后添加各自的属性,最后扔到 head 标签里面。经测试,本方法兼容各浏览器,安全、无毒、环保,实乃 web 开发人员工作常备代码,请放心使用。
下面是调用代码,异常简单:
//动态加载 CSS 文件 dynamicLoading.css("test.css"); //动态加载 JS 文件 dynamicLoading.js("test.js");
相关文章推荐
- js 创建对象的三种方式——工厂模式、构造函数模式、原型模式
- jsp实现ajax的一个例子
- JS设置cookie,删除cookie
- JSON的读取与写入
- JSP Servlet 上传
- The JSR-133 Cookbook for Compiler Writers
- JavaScript面向对象编程(10)高速构建继承关系之对象拷贝
- arcgis api for javascript (2) 获取属性字段及自定义graphic样式
- js检测浏览器版本
- [置顶] 自定义EL表达式,将对象转成json格式,关键代码
- IE8 兼容JS trim() 解决方案
- bzoj1823 [JSOI2010]满汉全席(2-SAT)
- 后台和jsp乱码处理
- (转)轻松学习JavaScript三:JavaScript与HTML的结合
- (转)JavaScript二:JavaScript语言的基本语法要求
- Backbone.js 1.1.2
- 【 D3.js 进阶系列 — 2.1 】 力学图的事件 + 顶点的固定
- Zepto.js 1.1.6
- Underscore.js 1.8.3
- JS中的事件大全