javascript - lastChild 不工作

标签 javascript jquery

我有以下代码:

<!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/

相关文章:

javascript - 读取 JSON Tiled map 编辑器文件并显示到 Canvas

php - 如何放置调试点

javascript - Jquery表单提交没有被触发

jquery - "Ajax is not found"异常 - Rails 是否错误地默认为 Prototype?

javascript - 向输入字段添加值

javascript - 动态选项卡的奇怪行为

javascript - 指令的依赖

javascript - js : how to access a class defined inside require from the outside (accessibility issue)

javascript - 直接在 Google Firestore 中获取 DocumentId

javascript - 创建具有固定内部尺寸和流体外部尺寸的框架的最佳方法是什么?