考虑下面的代码 -->
<template id="foo">
<script type="text/javascript">
console.log("00000000");
</script>
<script src="https://code.jquery.com/jquery-2.1.4.min.js"></script>
<script type="text/javascript">
console.log(11111111);
</script>
<script type="text/javascript">
console.log(22222222);
var xyz = $;
console.log(33333333);
</script>
</template>
现在将其附加到 DOM
var template = document.getElementById('foo')
var clone = document.importNode(template.content,true);
document.appendChild(clone);
在控制台中给出这个输出 -->
00000000
11111111
22222222
Uncaught ReferenceError: $ is not defined
所以一般的问题是-->
如何正确加载到 DOM,一个<template>
具有外部脚本(如本例中的 jQuery)的 html,后跟一个对其有一定依赖性的内联脚本。
另外 - 如果模板标签被删除,这不会发生 ->
<script type="text/javascript">
console.log("00000000");
</script>
<script src="https://code.jquery.com/jquery-2.1.4.min.js"></script>
<script type="text/javascript">
console.log(11111111);
</script>
<script type="text/javascript">
console.log(22222222);
var xyz = $;
console.log(33333333);
</script>
在后一种情况下,浏览器如何同步下载它?
在前一种情况下(使用模板)是否可以阻止脚本下载(逐行)?