开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 7017|回复: 3
收起左侧

[转载教程] 通过易入门JavaScript28-节点cha询

[复制链接]
结帖率:43% (12/28)
发表于 2020-2-16 08:21:47 | 显示全部楼层 |阅读模式   四川省广安市

在线观看

节点属性

在文档对象模型 (DOM) 中,每个节点都是一个对象。DOM 节点有三个重要的属性 :

  1. nodeName : 节点的名称

  2. nodeValue :节点的值

  3. nodeType :节点的类型

一、nodeName 属性: 节点的名称,是只读的。

  1. 元素节点的 nodeName 与标签名相同
  2. 属性节点的 nodeName 是属性的名称
  3. 文本节点的 nodeName 永远是 #text
  4. 文档节点的 nodeName 永远是 #document

二、nodeValue 属性:节点的值

  1. 元素节点的 nodeValue 是 undefined 或 null

  2. 文本节点的 nodeValue 是文本自身

  3. 属性节点的 nodeValue 是属性的值

三、nodeType 属性: 节点的类型,是只读的。以下常用的几种结点类型:

元素类型   节点类型
元素      1
属性      2
文本      3
注释      8
文档      9

查找节点方法

document.getElementById(id);//通过id查找元素
document.getElementsByClassName();//通过类名查找元素集合
document.getElementsByTagName();//通过标签名查找集合
document.getElementsByName();//通过name属性查找集合

//以下属性带有Element的不兼容IE8及以下。
innerHTML//当前节点内的HTML代码
innerText//当前节点内的文本节点
//-------子节点
childNodes;//当前节点的所有子节点
children;//当前节点的所有子元素节点
firstChild;//当前节点的第一个子节点
firstElementChild;//当前节点的第一个子元素节点
lastChild;//当前节点的最后一个子节点
lastElementChild;//当前节点的最后一个子元素节点
//-------父节点
parentNode   
parentElement//以上两个属性都是获取父节点。这里没什么区别,因为父节点不会是空白。
//-------兄弟节点
previousSibling//上一个兄弟节点
previousElementSibling//上一个兄弟元素
nextSibling//下一个兄弟节点
nextElementSibling//下一个兄弟元素节点

任务1

找这个列表的第一个子元素

任务2

找这个列表的第二个子元素

任务3

找这个列表的第二个子元素的后两个子元素

网页代码:

<!DOCTYPE html>
<html lang="zh">

<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        * {
            margin: 0;
            padding: 0;
            list-style: none;
        }

        #list {
            margin-top: 10px;
            margin-left: 10px;
            width: 400px;
            height: 700px;
            border: 1px solid black;
            overflow: auto;
            user-select: none;
        }

        .items {
            display: flex;
            margin: 5px;
            border: 1px solid black;
        }

        .items img {
            width: 120px;

        }

        #btn_add {
            position: absolute;
            top: 10px;
            left: 450px;
        }
    </style>

</head>

<body>
    <ul id="list">
        <li class="items">
            <img src="touxiang.jpg" alt="">
            <div class="right">
                <h2>项目标题</h2>
                <p>详情信息详情信息详情信息详情信息详情信息详情信息</p>
            </div>
        </li>
        <li class="items">
            <img src="touxiang.jpg" alt="">
            <div class="right">
                <h2>项目标题</h2>
                <p>详情信息详情信息详情信息详情信息详情信息详情信息</p>
            </div>
        </li>
        <li class="items">
            <img src="touxiang.jpg" alt="">
            <div class="right">
                <h2>项目标题</h2>
                <p>详情信息详情信息详情信息详情信息详情信息详情信息</p>
            </div>
        </li>
        <li class="items">
            <img src="touxiang.jpg" alt="">
            <div class="right">
                <h2>项目标题</h2>
                <p>详情信息详情信息详情信息详情信息详情信息详情信息</p>
            </div>
        </li>
    </ul>
    <script>
        var ul = document.getElementById("list");
        // 任务1
        // 找这个列表的第一个子元素
        // console.log(ul.firstChild);
        // console.log(ul.firstElementChild);
        // 任务2
        // 找这个列表的第二个子元素
        // var x = 3;//表示获取第几个
        // console.log(ul.childNodes[x*2-1]);

        // 任务3
        // 找这个列表的第二个子元素的下下个子元素
        // var li2 = ul.children[1]
        // console.log(li2.nextElementSibling.nextElementSibling);

    </script>
</body>

</html>



发表于 2020-2-27 21:57:28 | 显示全部楼层   广西壮族自治区玉林市
感谢分享
回复 支持 反对

使用道具 举报

发表于 2020-2-26 15:25:44 | 显示全部楼层   山东省济南市
666666666777
回复 支持 反对

使用道具 举报

发表于 2020-2-16 21:23:46 | 显示全部楼层   **
学习一下学习一下
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表