我正在检查文档中是否包含jQuery。如果不是,我想在结束体标记之后创建一个元素。
<script type="text/javascript">
if( !(typeof jQuery === 'function') ){
var script = document.createElement('script');
script.src = 'https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js';
script.type = 'text/javascript';
var head = document.getElementsByTagName("head")[0];
head.appendChild(script);
}
</script>
如果我使用body标签执行此操作,则会将其附加到顶部。我想把它贴在身体标签的末尾或者在关闭它之后。
请帮忙。
答案 0 :(得分:4)
我假设你想这样做是因为有人告诉我<script>
节点放在<body>
的底部是很重要的。这对于“普通”脚本标记是正确的,但在您的情况下,它是一个动态插入的脚本节点,因此它会加载 asyncronously 。正常的脚本标记在执行Javascript时会阻塞,这就是您应该将它们放在文档末尾的原因。
但在你的情况下,完全没问题。
答案 1 :(得分:4)
使用document.body.appendChild()
。它会将元素附加到body标记的末尾。
顺便说一句,jAndy是对的,几乎不需要在正文末尾动态添加javascript文件。
答案 2 :(得分:0)
将JavaScript放在文档末尾的原因是推迟尽可能长时间加载它。如果您将上面的代码包含在文档的底部,那么您应该达到相同的效果,然后它包含在源中的位置并不重要。
答案 3 :(得分:0)
在身体结束标记之后你不能有任何其他标签(可能是头部,但应该在顶部)。 http://www.w3.org/TR/html401/struct/global.html#edef-HTML