JavaWeb学习笔记4 JavaScript9 DOM模型(重点)

概念

DOM模型全称是 Document Object Model文档对象模型
就是把文档中的标签,属性,文本,转换为对象来管理

Document对象(重点)

在这里插入图片描述

  • Document对象的理解:
    第一点:Document它管理了所有的Html文档内容。
    第二点,document它是一种树形结构的文档。有层级关系。
    第三点,它让我们把所有的标签 都 对象化。
    第四点,我们可以通过document访问所有的标签对象。

  • 什么是对象化
    就是用一个类去记录信息
    举例:
    有一个人18岁,女,名字张三,信息对象化:
    Class Person{
    private int age;
    private String sex;
    private String name;
    }

  • html标签 要 对象化:
    < body >
    < div id = “div01”>div01< /div >
    < /body >

    • 模拟对象化,相当于
      class Dom{
      private String id;//id属性
      private String tagName;//表示标签名
      private Dom parentNode;//父亲
      private List< Dom >children;//孩子节点
      private String innerHTML;//起始标签和结束标签中间的内容
      }

    Document对象中的方法介绍(重点)

  • document.getElementById(elementId)
    通过标签的id属性查找标签dom对象,elementId是标签的id属性值

  • document.getElementsByName(elementName)
    通过标签的name属性查找标签dom对象,elementName标签的name属性值

  • document.getElementsByTagName(elementTagName)
    通过标签名查找标签dom对象。tagname是标签名

  • document.createElement(tagName)
    方法,通过给定的标签名,创建一个标签对象。tagName是要创建的标签名。

    document对象的三个查询方法,如果有id属性优先使用getElementById进行查询
    没有id属性则优先使用getElementsByName进行查询
    如果id属性和name属性都没有,最后再使用getElementsByTagName进行查询
    以上三个方法一定要在页面加载完成之后执行,才能查询到标签对象。

在这里插入图片描述

document.getElementById

例子:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
点击校验
在这里插入图片描述
在这里插入图片描述

输入合法用户名并点击校验
在这里插入图片描述

RegExp正则表达式

语法:
var patt = new RegExp(pattern,modifiers);
或者更简单的:
var patt = /pattern/modifiers;

  • pattern(模式)描述了表达式的模式
  • modifiers(修饰符)用于指定全局匹配、区分大小写的匹配和多行匹配
    在这里插入图片描述
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

用的最多的元字符:\w
在这里插入图片描述
在这里插入图片描述

   //表示要求字符串中,是否包含字母e
    // var patt =new RegExp("e");
    // var patt =/e/;  //也是正则表达式对象

    //表示字符串中是否包含a或b或c
    // var patt =/[abc]/;

    //表示字符串中是否包含小写字母
    // var patt=/[a-z]/;

    // 表示字符串中是否包含大写字母
    // var patt=/[A-Z]/;

    //表示字符串中是否包含数字
    // var patt=/[0-9]/;

    //表示字符串中是否包含数字,字母,下划线
    // var patt=/\w/;

    //表示字符串中是否包含至少1个a
    // var patt=/a+/;

    //表示字符串中是否 *包含*(一种短路的感觉) 0个 或 多个a
    // var patt=/a*/;

    //表示字符串中是否 *包含* 1个或0个a
    // var patt=/a?/;

    //表示字符串中是否 *包含* 连续3个a
    // var patt=/a{3}/;

    //表示字符串中是否 *包含* 至少3个连续的a,最多5个连续的a
    // var patt=/a{3,5}/;

    //表示字符串中是否 *包含* 至少3个连续的a
    // var patt=/a{3,}/;

    //表示要求字符串必须以a为结尾
    // var patt=/a$/;

    //表示要求字符串必须以a为开头
    // var patt=/^a/;

    //要求字符串从头到尾必须完全匹配
    // var patt=/^a{3,5}$/;

例子改良

在这里插入图片描述
在这里插入图片描述
运行直接点击校验按钮
在这里插入图片描述
在这里插入图片描述
点击确认后
在这里插入图片描述
运行后输入合法用户名后点击校验按钮
在这里插入图片描述
在这里插入图片描述
点击确认后
在这里插入图片描述

document.getElementsByName

例子:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
点击全选
在这里插入图片描述
点击全不选
在这里插入图片描述
点击反选
在这里插入图片描述

document.getElementsByTagName

例子
在这里插入图片描述
在这里插入图片描述
点击全选
在这里插入图片描述

节点的常用属性和方法

概念

节点就是标签对象

方法

  • 通过具体的元素节点调用getElementsByTagName()方法,获取当前节点的指定标签名孩子节点

  • appendChild(oChildNode)方法,可以添加一个子节点,oChildNode是要添加的孩子节点

属性

childNodes
属性,获取当前节点的所有子节点
firstChild
属性,获取当前节点的第一个子节点
lastChild
属性,获取当前节点的最后一个子节点
parentNode
属性,获取当前节点的父节点
nextSibling
属性,获取当前节点的下一个节点
previousSibling
属性,获取当前节点的上一个节点
className
用于获取或设置标签的class属性值
innerHTML
属性,表示获取/设置起始标签和结束标签中的内容
innerText
属性,表示获取/设置起始标签和结束标签中的文本

createElement和appendChild

在这里插入图片描述

运行后
在这里插入图片描述
下面这个说明dom对象中文本也是对象
在这里插入图片描述
运行后
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值