获取包含Javascript片段的DOM元素
有没有办法获取对Javascript函数容器的引用 举个例子:获取包含Javascript片段的DOM元素,javascript,Javascript,有没有办法获取对Javascript函数容器的引用 举个例子: <div> <script> var thisDiv = ??? doSomething(thisDiv); </script> </div> var thisDiv=??? 剂量测定法(thisDiv); this关键字似乎仅指由直接事件(如onClick())触发的包含元素。否则此引用包含的窗口元素。是否有任何等效的方法来获取片段的父元素或包含元素?没有完
<div>
<script>
var thisDiv = ???
doSomething(thisDiv);
</script>
</div>
var thisDiv=???
剂量测定法(thisDiv);
this
关键字似乎仅指由直接事件(如onClick()
)触发的包含元素。否则此
引用包含的窗口
元素。是否有任何等效的方法来获取
片段的父元素或包含元素?没有完全可靠的方法。最接近的方法是找到DOM中的最后一个脚本元素(使用document.getElementsByTagName
),然后从那里导航(parentNode
等)
如果动态插入或使用脚本元素
defer
或async
相关:。仅供参考,元素不会创建范围。只有全局作用域和函数作用域。脚本元素不创建作用域。@FelixKling:谢谢。我只是用了“scope”,因为没有更好的词。我将更改标题以消除任何歧义。如果可能,您最好使用id
ing包含脚本的divs,如果我将您的解决方案的parentNode
与@FelixKling建议的链接中的解决方案相结合,类似于:var thisDiv=document.currentScript.parentNode代码>。这样行吗?