如何使用jquery动态加载js,css文件

提问者:贼小子1989 提问时间:2018年02月27日 人气:2
推荐答案

    加载js文件,可以通过jquery自带的getScript方法实现;加载js文件和css文件,需要编写代码实现,具体的实现步骤如下:


1、jquery自带的getSrcript方法加载js文件

    $.getScript(url,callback)

var testVar = 'New JS loaded!';

alert(testVar); function newFun(dynParam) {

alert('You just passed '+dynParam+ ' as parameter.');

}

动态调用方法:



<script type="text/javascript" src="../jquery.js"></script>  
 <script type="text/javascript"> 
 $(function() 
 { 
     $('#loadButton').click(function(){ 
         $.getScript('new.js',function(){ 
             newFun('"Checking new script"');//这个函数是在new.js里面的,当点击click后运行这个函数 
         }); 
     }); 
 }); 
 </script> 
 </head> 
 <body> 
 <button type="button" id="loadButton">Load</button>

以上代码只能动态加载js代码,但不能加载css


2、自定义加载js和css文件的代码



$.extend({

    includePath: '',

    include: function(file)

    {

        var files = typeof file == "string" ? [file] : file;

        for (var i = 0; i < files.length; i++)

        {

            var name = files[i].replace(/^s|s$/g, "");

            var att = name.split('.');

            var ext = att[att.length - 1].toLowerCase();

            var isCSS = ext == "css";

            var tag = isCSS ? "link" : "script";

            var attr = isCSS ? " type='text/css' rel='stylesheet' " : " language='javascript' type='text/javascript' ";

            var link = (isCSS ? "href" : "src") + "='" + $.includePath + name + "'";

            if ($(tag + "[" + link + "]").length == 0) 
                document.write("<" + tag + attr + link + "></" + tag + ">");

        }

    }

});

$.include(['hdivbox.js','pop_win.css']);
辅助答案
用户:阿诺壹qqq
2018年03月12日
js可以直接用$.getScript()方法
css可以$('head').append('<link href="xxx.css" rel="stylesheet" type="text/css" />')