当站点为您提供一些 JavaScript,您将其粘贴到网页中以在该位置插入内容时,该脚本如何确定其在 DOM 中的当前位置?不使用 document.write?
谢谢,
尼克
最佳答案
在脚本包含时,可以肯定的是最后一个 <script>
在页面中将是当前页面;页面的其余部分尚未解析。所以:
<script type="text/javascript">
var scripts= document.getElementsByTagName('script');
var this_script= scripts[scripts.length-1];
// Something that happens later...
//
setTimeout(function() {
var div= document.createElement('div');
div.appendChild(document.createTextNode('Hello!'));
this_script.parentNode.insertBefore(div, this_script);
}, 5000);
</script>
只要脚本标签不使用defer
,这就成立。 , 或 HTML5 的 async
.
关于javascript - 在 <script> 标签位置插入元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2789604/