访问script标签的外层节点
题目的意思就是不通过id来获取包裹script标签的div标签。
比如,这样一个html片段:
<div> <script type="text/javascript" src='extern.js'></script> </div>
那如何在extern.js中访问包含该脚本的div呢?
解决方法中利用浏览器顺序执行的特点,只要执行到该脚本,那么必然地,该脚本属于当前环境中最后一个script标签,因而可以不通过id来获取script的位置。
1 var scripts = document.getElementsByTagName('script'); 2 var currentScript = scripts[scripts.length - 1]; 3 console.log(currentScript.parentNode); // 输出div节点