• 动态加载js,css


    今天项目中需要用到动态加载 CSS 文件,经过一番折腾终于搞定,回家整理了一下,顺便融合了动态加载 JS 的功能写成了一个对象,先上代码:

    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");
    

    这里还提供了本文的 demo ,下载、解压,如果一切正常,打开 HTML 文件,页面将弹出对话框,并呈现鲜艳的红色,这说明它已经成功地动态加载了外部的 CSS 和 JS 文件。

  • 相关阅读:
    css3 flex 布局
    用CSS3 & jQuery创建apple TV海报视差效果
    JavaScript知识点的总结
    javascript 常用DOM操作整理
    html打造动画【系列4】哆啦A梦
    如何掌握jQuery插件开发(高能)
    前端基础进阶(一):内存空间详细图解
    JavaScript中数组对象详解
    [zhuan]JNIEnv解析
    在 C Level 用 dlopen 使用 第三方的 Shared Library (.so)
  • 原文地址:https://www.cnblogs.com/jinhaoObject/p/4962437.html
Copyright © 2020-2023  润新知