Obtain a reference to <script> parent element
本问题已经有最佳答案,请猛点这里访问。
我有一个类似的问题,比如在这里发布,但是我没有获得父ID,我如何在不需要为脚本标记编码ID的情况下获得对脚本父ID的引用?
例如,我向一个网站注入了以下代码:
1 2 | some other html tags <script src="http://path_to_my_script.js"> |
我需要的是,在我的
存在一个陷阱,即代码将被复制和粘贴到同一网页的多个位置,这使得标识符无效。
有没有机会不用在整个代码中编码一个ID就可以做到这一点?
如果解决方案是jquery,则更好:d
事先谢谢。
正如在javascript中提到的,当前元素是什么?,当前的
答案也适用于您的情况,因为外部脚本的加载没有延迟(通过
1 2 3 | var scriptTag = document.getElementsByTagName('script'); scriptTag = scriptTag[scriptTag.length - 1]; var parentTag = scriptTag.parentNode; |
大多数浏览器(甚至IE6)都支持
1 2 | var scriptTag = document.scripts[document.scripts.length - 1]; var parentTag = scriptTag.parentNode; |
可以使用属性选择器获取具有特定
1 | var parentDiv = $('script[src="path/to/script.js"]').parent('div'); |
您需要一种方法来引用您的脚本。你还想知道你想要哪个脚本吗?如果你只有一个脚本,你可以一直这样做
1 | var myScript = document.getElementsByTagName("script")[0]; |
获取页面上第一个脚本的DOM元素。或者,您可以使用jquery和循环脚本对每个脚本执行一些操作:
1 2 3 | $("script").each(function() { alert($(this).html()); }); |