这里有一个令人难以置信的解决这个问题的方法:与其尝试获取当前节点,不如创建一个具有任意ID的新节点,然后在完成后删除它。
<div id="foo">
<span id = "bar">456</span>
<script type="text/javascript">
document.write('<span id = "bfrogtmp"></span>');
var y = document.getElementById("bfrogtmp");
document.write(y.parentNode.children['bar'].innerHTML);
y.parentNode.removeChild(y);
</script>
</div>
<hr>
<div id="foo">
<span id = "bar">123</span>
<script type="text/javascript">
document.write('<span id = "bfrogtmp"></span>');
var y = document.getElementById("bfrogtmp");
document.write(y.parentNode.children['bar'].innerHTML);
y.parentNode.removeChild(y);
</script>
</div>