我有以下代码:
<!DOCTYPE html>
<html>
<head>
<meta charset = "utf-8"/>
<script type = "text/javascript" src = "js/jquery.js" ></script>
</head>
<body>
<div id = 'div'>
<div id = "1">
</div>
<div id = "2">
</div>
</div>
</body>
</html>
我的 JavaScript 代码是:
$(document).ready(function(){
var lastcommentq = document.getElementById('div').lastChild.id;
alert(lastcommentq);
});
它应该提醒 div 的 lastchild 的 ID,其 ID 为“2”,但我收到的提醒为“未定义”。我不知道我做错了什么。请帮助我。
最佳答案
你的元素周围可能有文本节点,所以外层的最后一个子节点 <div>
不一定具有“id”属性。
我不确定是否所有浏览器都支持它,但是有一个“lastElementChild”属性明确地只获取元素,而不是评论节点或文本节点之类的东西。如果做不到这一点,您可以循环遍历节点列表以查找类型 1 节点。
关于javascript - lastChild 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18341886/