如果我使用document.getElementById
将DOM元素存储在变量中,然后使用removeChild
方法从DOM中删除该元素,则存储在该变量中的对象不会更新为空引用。例如:
<div id="a">
</div>
<script>
var a = document.getElementById('a');
alert(a); // Alerts "[object HTMLDivElement]".
a.parentNode.removeChild(a);
alert(a); // Still alerts "[object HTMLDivElement]".
</script>
是否有任何方法可以使a
变量中存储的DOM元素引用更“实时”,因为它可以检测元素何时从DOM中删除,从而更新为null
或任何?
提前谢谢。
答案 0 :(得分:1)
你不能,因为你存储在变量中,只需要在需要检查时调用var a = document.getElementById('a')。
var a = document.getElementById('a');
警报(a)的//提醒“[object HTMLDivElement]”。
a.parentNode.removeChild(a)的
a = document.getElementById('a');
警报(a)的//“未定义”。