Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript动态脚本创建与脚本延迟_Javascript_Dom_Dynamic - Fatal编程技术网

javascript动态脚本创建与脚本延迟

javascript动态脚本创建与脚本延迟,javascript,dom,dynamic,Javascript,Dom,Dynamic,我在阅读有关加载javascript的非阻塞方式的文章,我发现了一些有趣的概念,尤其是一个新概念。脚本延迟属性 我知道如何动态创建脚本并将它们插入到文档的头部,我有一个函数用于此 例如: function loadJS(loc){ var script = document.createElement("script"); script.type = "text/javascript"; script.src = loc } 我已经看到了延迟属性,我不知道如何使用它

我在阅读有关加载javascript的非阻塞方式的文章,我发现了一些有趣的概念,尤其是一个新概念。脚本延迟属性

我知道如何动态创建脚本并将它们插入到文档的头部,我有一个函数用于此

例如:

 function loadJS(loc){
    var script = document.createElement("script");
    script.type = "text/javascript";
    script.src = loc
 }
我已经看到了延迟属性,我不知道如何使用它,它的主要优点/缺点是什么


提前谢谢各位

我一直在寻找类似的答案,正要发布一个问题,这时我发现了——还有你的答案

下面是我发现的:

  • 脚本
    defer
    方法提示浏览器在执行脚本之前等待文档加载完成。但是它仍然首先加载脚本(假设它们位于文档的头部)
  • jQuery有一个
    .getScript()
    方法,可以在需要的时候和任何地方加载任意数量的脚本。例如,您甚至可以将其应用于链接上的
    onClick
    事件
  • 还有一些库旨在动态、非阻塞加载,例如,或
我想这取决于你选择哪种方法,如果你只是在一个小项目上,并且已经使用和/或习惯于使用jQuery,那么我会同意。否则你可以去图书馆看看

不过,我要再次声明,
DEFER
在加载脚本时不会阻止页面阻塞。但是一个典型且非常简单的解决方案是将所有脚本包含在页脚中,而不是页眉中


如果我在上述任何一点上有错误,请大家随时纠正我谢谢