如何动态加载JavaScript并将其缓存为HTML

时间:2019-10-15 06:17:17

标签: javascript xmlhttprequest

当我尝试动态加载脚本时,我的问题正在变得异步 当我们尝试在html正文中使用该函数时会导致问题

当我尝试XMLHttpRequest来获取数据时,它是同步的,但没有在浏览器级别缓存。

var jsElm = document.createElement("script"); //getting data async
    jsElm.type = "application/javascript";
    jsElm.src = file;
    document.body.appendChild(jsElm);


var xmlhttp=new XMLHttpRequest();//getting data sync but not cached
xmlhttp.send();

我想知道如何加载同步的脚本以及下次从缓存加载的脚本。

1 个答案:

答案 0 :(得分:0)

如果要动态加载脚本并确保在使用脚本之前已将其加载,则可以稍加修改即可同步加载该脚本:https://stackoverflow.com/a/57915593/12031739

通常不赞成使用document.write

正如我在帖子的答案中提到的那样,这不是理想的选择,但是它将完成工作。

<script>
document.write(`<script src="${file}"><\/script>`);
</script>

应根据文件和浏览器的缓存指令来缓存文件。

相关问题