JavaScript学习手册十四:HTML DOM——文档元素的操作(二)

1.创建节点

任务描述

1.本关任务:创建一个表单<form>节点。

2.具体要求如下:

  • 创建一个form节点,然后赋值给变量newNode,设置节点的id值为myForm,method值为post,如下所示:
<form id="myForm" method="post"></form>
  • 字符串类型参数用""包含在内。

相关知识

有的时候,我们需要往页面动态的添加文档元素(节点),比如根据省份的不同展现不同的城市列表,在添加节点之前需要先创建该节点。

创建节点

document.createElement("tagName")用来创建一个新的Element节点(即文档元素),返回值是新创建的节点,tagName是标签的名字,比如a、p、img等,需要注意的是它不区分大小写。

比如创建一个新的超链接节点:

var newA = document.createElement("a");//创建超链接节点
newA.src = "https://www.educoder.net";//设置超链接的目的地址

代码文件

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
</head>
<body>
    <p></p>
    <script>
    	<!-- 请在此处编写代码 -->
        <!---------Begin--------->
        
        var newNode = document.createElement('form');
        newNode.method='post';
        newNode.id='myForm';

        <!---------End--------->
		document.body.appendChild(newNode);
        console.log(newNode.method);
    </script>
</body>
</html>

2.插入节点

任务描述

  • ul标签在html中表示无序列表,li标签标识其中的列表项。

1.本关任务:在无序列表中插入新的列表项。

2.具体要求如下:

  • 使用createElement方法创建一个li类型的新节点newNode;
  • 通过innerText方法设置该节点内部文本的内容为Canada;
  • 通过getElementById和appendChild方法将newNode节点添加到ul标签下面,作为它的最后一个子节点;
  • 所有的字符串类型参数请用""包含在内;

相关知识

  • 插入节点:插入一个新的文档元素。

最常见的应用就是在<select>标签里插入一个新的<option>标签。

插入节点

两种可选的方法:

  • 方法1appendChild()
  • node1.appendChild(node2)表示将node2插入到node1的最后一个子节点中。

比如原来的选择框是这样:

<select id="s1">
    <option id="cs">长沙</option>
    <option id="zz">株洲</option>
</select>

要把它变成这样:

<select id="s1">
    <option id="cs">长沙</option>
    <option id="zz">株洲</option>
    <option >湘潭</option>
</select>

实现代码如下:

var node1 = document.getElementById("s1");
var node2 = document.createElement("option");
node2.innerText = "湘潭";
node1.appendChild(node2);
  • 方法2insertBefore()
  • pNode.insertBefore(node1,node2):将node1插入作为pNode的子节点,并且node1排在已存在的子节点node2的前面。

比如要把最开始的复选框变成这样:

<select id="s1">
    <option id="cs">长沙</option>
    <option>湘潭</option>
    <option id="zz">株洲</option>
</select>

我们需要像下面这样操作节点:

var pNode = document.getElementById("s1");
var node1 = document.createElement("option");
node1.innerText = "湘潭";
var node2 = document.getElementById("zz");
//将内容为"湘潭"的节点插入到内容为"株洲"的节点前面
pNode.insertBefore(node1,node2);

代码文件

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
</head>
<body>
    <ul id="ul1">
        <li>America</li>
        <li>Mexio</li>
    </ul>
    <script>
    	<!-- 请在此处编写代码 -->
        <!---------Begin--------->
        var node = document.getElementById('ul1');
        var newNode = document.createElement('li');
        newNode.innerText='Canada';
        node.appendChild(newNode);

        <!---------End--------->
        var out = document.getElementsByTagName("li")[2];
        console.log(out.innerText);
    </script>
</body>
</html>

3.删除节点

任务描述

  • ol标签在html中表示有序列表,li标签表示其中的列表项。

1.本关任务:在有序列表中删除指定的列表项。

2.要求按照步骤进行:

  • 获取id为browser的节点,赋值给变量parent;
  • 获取id为opera的节点,赋值给变量child;
  • 通过removeChild方法删除child节点;
  • 获取节点使用getElementById方法;
  • 字符串类型参数用""包含在内。

相关知识

这里的删除节点指的是:父元素删除自己的子元素。

删除节点

  • 删除节点的方法是removeChild(),调用者是父节点,参数是子节点,作用是删除这个子节点。

下面是一个无序列表的代码:

<ul id="parent">
  <li>提子</li>
  <li>车厘子</li>
  <li id="child3">荔枝</li>
</ul>

用浏览器打开这个文件,效果如下:
在这里插入图片描述
如果我们要删除第三行,可以这样操作:

第一步:获取父节点,即ul节点:

var parentNode = document.getElementById("parent");

第二步:获取待删除的子结点:

var childNode = document.getElementById("child3");

第三步:父节点调用removeChild()方法删除子节点:

parentNode.removeChild(childNode);

执行完这三个js语句后,再次用浏览器打开,结果为:
在这里插入图片描述

代码文件

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
</head>
<body>
    <ol id="browser">
        <li id="chrome">Chrome</li>
        <li id="firefox">Firefox</li>
        <li id="opera">Opera</li>
        <li id="safari">Safari</li>
    </ol>
    <script>
    	<!-- 请在此处编写代码 -->
        <!---------Begin--------->
        var parent = document.getElementById("browser");
        var child = document.getElementById("opera");
        parent.removeChild(child);

        <!---------End--------->
    </script>
</body>
</html>

4.替换节点

任务描述

1.本关任务:替换指定的节点

2.具体要求如下,请按步骤操作:

  • 获取id为parent的节点(父节点),赋给变量parent;
  • 获取id为old的节点(子节点),赋给变量old;
  • newChild已知,用newChild替换子节点old;
  • 使用getElementById方法获取节点;
  • 字符串参数用""包含在内。

相关知识

一般来说,替换节点=删除节点+新增节点,可以用前面介绍的知识结合起来实现,当然,js提供了replaceChild()方法一次完成替换。

替换节点

replaceChild(a,b)的调用者是要被替换的节点的父节点,a是新的节点,b是被替换的节点。

以无序列表为例:

<ul id="parent">
  <li id="child1">黄山</li>
  <li id="child2">庐山</li>
  <li id="child3">泰山</li>
</ul>

要替换掉第三个子节点,过程如下:

第一步,获取父节点:

var parNode = document.getElementById("parent");

第二步,获取要被替换的子节点:

var oldNode = document.getElementById("child3");

第三步,创建新节点:

var newChild = document.createElement("li");
newChild.innerText = "武夷山";

第四步,替换:

parNode.replaceChild(newChild,oldNode);

替换前后的效果对比:
在这里插入图片描述

代码文件

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
</head>
<body>
    <ol id="parent">
        <a id="old" href="https://www.google.com">Google</a>
    </ol>
    <script>
        var newChild = document.createElement("a");
        newChild.innerText = "eduCoder";
        newChild.href = "https://www.educoder.net";
        <!-- 请在此处编写代码 -->
        <!---------Begin--------->
        var parent = document.getElementById("parent");
        var old = document.getElementById("old");
        parent.replaceChild(newChild,old);
        
        <!---------End--------->
    </script>
</body>
</html>

5.综合练习

任务描述

1.本关任务:练习节点的操作

2.具体要求如下:

  • 继续拓展相关知识中介绍的功能,要求第一列选择安徽省后,第二列下拉的选项中出现黄山市和合肥市两个选项,按照以下步骤进行;
  • 创建一个option类型节点child2;
  • 设置child2的value属性的值为HeFeiCity;
  • 设置child2的显示的文本为合肥市;
  • 将child2设置为id为city的节点下面的第二个子节点;
  • 使用getElementById方法获取节点;
  • 字符串类型的参数用""包含在内。

相关知识

综合前面学习过的节点的各种操作,可以实现很复杂的功能。

下拉列表的级联

相信大家都见过这样的下拉框:
在这里插入图片描述
它有三列,每一列都会根据前一列的结果动态的改变自己的可选项,称为下拉框的级联,那么如何实现呢?

第一步:静态的HTML的代码如下(简单起见,只考虑前两列):

<select id="province" onChange="changeCity()">
    <option value="BeiJing" id="bj">北京</option>
    <option value="AnHui" id="ah">安徽</option>
</select>
<select id="city">
    <option value="BeiJingCity">北京市</option>
</select>
  • select表示选择框,option表示选择框里面的每一个选项,onChange="changeCity()"表示一旦改变当前的选项,就会触发JavaScript函数changeCity()的执行。
  • 对于这个静态的HTML页面,不论你在第一列选择的是北京还是安徽,第二列的选项都只有北京市一项。

第二步:获取两个选择框对应的节点元素
(以下的所有代码都是changeCity()函数里面的内容):

var province = document.getElementById("province");
var city = document.getElementById("city");
  • province变量代表第一列的选择框,city变量代表第二列的选择框。

第三步:清空第二列中的所有内容;
根据第一列的选择结果改变第二列的内容,就是根据父节点的不同替换不同的子节点,我们采用先删除后新增的方法实现替换:

var length = city.children.length;
for(var i = length-1;i >= 0;i--) {
    city.removeChild(city.children[i]);
}
  • 在for循环里面,依次删除city节点下面的所有子节点。
  • 需要注意的是,每删除一个子节点后,表示子节点个数的属性city.children.length都会自动减1,所以我们需要在for循环开始之前索取子节点的长度。

第四步:根据父节点的不同新增不同的子节点:

if(province.value == "BeiJing") {
    var child1 = document.createElement("option");
    child1.value ="BeiJingCity";
    child1.innerText="北京市"
    city.appendChild(child1);
} else {
    var child1 = document.createElement("option");
    child1.value="HuangShanCity";
    child1.innerText="黄山市";
    city.appendChild(child1);
}
  • province.value表示第一列选中的选项的值,即选中的option标签的value的值。
  • 如果第一列选择的是北京,我们需要增加一个选项为北京市的option节点,这个节点将作为city的子节点。如果第一列选择的是安徽,我们需要增加一个选项为黄山市的option节点,这个节点将作为city的子节点。
  • value属性表示option标签的值,innerText表示option标签呈现出来的值。

代码文件

<html>
<head>
<title>myTitle</title>
<meta charset="utf-8" />
</head>
<body>
<select id="province" onChange="changeCity()">
	<option value="BeiJing" id="bj">北京</option>
    <option value="AnHui" id="ah">安徽</option>
</select>
<select id="city">
    <option value="BeiJingCity">北京市</option>
</select>
<script>
function changeCity() {
    var province = document.getElementById("province");
    var city = document.getElementById("city");
    var length = city.children.length;
    for(var i = length-1;i >= 0;i--) {
        city.removeChild(city.children[i]);
    }
    if(province.value == "BeiJing") {
        var child1 = document.createElement("option");
        child1.value="BeiJingCity";
        child1.innerText="北京市"
        city.appendChild(child1);
    } else {
        var child1 = document.createElement("option");
        child1.value="HuangShanCity";
        child1.innerText="黄山市";
        city.appendChild(child1);
        //请在此处编写代码
        /*********Begin*********/
        var child2 = document.createElement("option");
        child2.value="HeFeiCity";
        child2.innerText="合肥市";
        city.appendChild(child2);

        /*********End*********/
    }
}
</script>
</body>
</html>

【做题的过程中,发生了很多次单词拼写错误哦,大家一定要细心,可不要学我,找了半天的错,结果是一个字母错了】

-----------------------------------------一日句子:
“我们是否知道我们心中的风筝到底在什么地方,人生错过就不会再得到,也许我们会忏悔,会救赎,但这些似乎都已经晚了,每当天空放飞起风筝的那一刻,我们是不是应该问问自己我们是否真的珍惜我们所拥有的一切。”
——卡勒德·胡赛尼《追风筝的人》

  • 30
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
目录 第1篇 JavaScript基础篇 第1章 JavaScript简介 1.1 JavaScript概述 1.1.1 什么是JavaScript 1.1.2 JavaScfipt的基本特点 1.1.3 常用的Web开发语言 1.2 JavaScript的应用 1.2.1 客户端应用 1.2.2 服务器端应用 1.3 在web页面中使用JavaScript 1.3.1 HTML的基本结构 1.3.2 在HTML中嵌入JavaScript 1.3.3 链接JavaScript文件 1.4 编写JavaScript的工具 1.4.1 使用纯文本编辑器 1.4.2 使用专业化脚本编辑工具 1.4.3 使用Microsoft脚本编辑器 第2章 JavaScript编程基础 2.1 基础语法 2.1.1 数据类型 2.1.2 变量和常量 2.1.3 表达式 2.1.4 运算符 2.2 流程控制 2.2.1 条件语句r 2.2.2 循环语句 2.2.3 其他语句 2.3 使用对话框 2.3.1 警告对话框 2.3.2 确认对话框 2.3.3 提示对话框 第2篇 JavaScript内置对象篇 第3章 JavaScript内置对象 3.1 JavaScript对象概述 3.1.1 对象的概念 3.1.2 使用JavaScript对象基础知识 3.2 Array对象 3.2.1 创建Array对象 3.2.2 Array对象属性 3.2.3 Array对象方法 3.3 String对象 3.3.1 创建String对象 3.3.2 String对象属性 3.3.3 String对象方法 3.4 Math对象 3.5 Date对象 3.5.1 Date对象方法 3.5.2 使用Date对象 3.6 自定义对象 第4章 JavaScript常用对象 4.1 Document对象 4.1.1 Document对象概述 4.1.2 使用Document对象 4.2 Form对象及其元素 4.2.1 Form对象概述 4.2.2 表单元素 4.2.3 表单元素属性和事件 4.2.4 表单验证 4.3 Anchor与Link对象 4.3.1 Anchor对象 4.3.2 Link对象 4.4 Image对象 4.4.1 图像翻转 4.4.2 图像载入 第5章 JavaScnpt其他常用窗口对象 5.1 Window对象 5.1.1 常用属性和方法 5.1.2 多窗口控制 5.2 Screen对象 5.3 Navigator对象 5.4 Location对象 5.4.1 常用属性和方法 5.4.2 Location对象的应用实例 5.5 History对象 5.5.1 常用属性和方法 5.5.2 History对象的应用实例 5.6 Frame对象 5.6.1 Frame对象概述 5.6.2 常用属性 5.6.3 Frame对象的应用实例 第6章 DoM对象 6.1 DOM概述 6.1.1 DOM简介 6.1.2 DOMHTML文档 6.2 DOM对象 6.2.1 DOM基本接口 6.2.2 DOM基本对象 6.3 使用DOM 6.3.1 DOM基础 6.3.2 Node和NodeList接口 6.3.3 Element接口 6.3.4 Text接口和Attr接口 6.4 操作HTML文档 6.4.1 访问元素 6.4..2 添加节点 6.4.3 删除节点 6.4.4 对属性进行操作 第3篇 JavaScript高级编程篇 第7章 正则表达式 7.1 正则表达式及其作用 7.2 正则表达式参考语法 7.2.1 限定符 7.2.2 选择匹配符 7.2.3 分组组合和反向引用符 7.2.4 特殊字符 7.2.5 字符匹配符 7.2.6 定位符 7.2.7 原义字符 7.3 RegExp对象 7.3.1 创建RegExp对象实例的两种方式 7.3.2 RegExp对象的属性 7.3.3 RegExp对象的方法 7.4 String对象中与正则表达式有关的方法 第8章 高级DoM技术 8.1 CSS样式 8.1.1 CSS语法 8.1.2 CSS属性 8.2 样式控制 8.2.1 Style对象 8.2.2 使用CSS属性 8.2.3 自定义鼠标提示 8.2.4 可折叠区域 8.3 StyleSheet对象 8.3.1 StyleSheet对象的属性 8.3.2 StyleSheet对象的方法 8.4 修改内容 8.5 实例应用 8.5.1 制作动态新闻框 8.5.2 显示当前日期 8.5.3 进度条控制滚动图片 8.5.4 百叶窗效果 8.5.5 更改表格间隔背景色 第9章 JavaScript中的XML 9.1 XML语言 9.1.1 XML概述 9.1.2 XML文档结构 9.1.3 XML标记 9.1.4 XML文档元素 9.1.5 XML属性 9.1.6 XML命名空间 9.2 XMLDOM 9.2.1 通用接口 9.2.2 IE中的XMLDOM支持 9.2.3 Mozilla中XMLDOM支持 9.2.4 XMLDOM实例 9.3 XPath 9.3.1 XPath概述 9.3.2 IE中的XPath支持 9.3.3 Mozilla中的XPath支持 9.4 XSLT 9.4.1 XSLT概述 9.4.2 IE中的XSLT支持 9.4.3 MozilIa中XSLT支持 9.5 数据岛技术 第10章 JavaScript事件处理 10.1 事件概述 10.1.1 事件简介 10.1.2 指定事件 10.2 原始事件模型 10.2.1 事件类型 10.2.2 使用事件返回值 10.2.3 使用事件this关键字 10.2.4 使用属性处理事件 10.2.5 使用JavaScript处理事件 10.3 标准事件模型 10.3.1 事件传播 10.3.2 注册事件处理程序 10.3.3 设置对象的事件处理程序 10.3.4 事件的模块和类型 10.3.5 Event接口和对象 10.4 IE事件模型 10.4.1 IEEvent对象 10.4.2 IE的事件传播 10.5 常用事件 10.5.1 鼠标事件 10.5.2 键盘事件 10.5.3 表单事件 10.5.4 编辑事件 10.5.5 页面事件 第11章 使用Cookie和文件 11.1 Cookie 11.1.1 Cookie概述 11.1.2 Cookie属性 11.1.3 创建Cookie 11.1.4 读取Cookie 11.1.5 删除Cookie 11.1.6 在客户机设置Cookie 11.1.7 保存用户登录状态 11.2 文件处理 11.2.1 FileSystemObjeet对象 11.2.2 Drive对象 11.2.3 Folder对象 11.2.4 File对象 11.2.5 资源管理器 第12章 JavaScript与Ajax 12.1 Ajax概述 12.1.1 Ajax运行机制 12.1.2 A1ax技术优势 12.2 Ajax核心技术 12.2.1 JavaSeript 12.2.2 DOM 12.2.3 XML 12.2.4 XMLHtlpRequest 12.3 使用Ajax 12.3.1 创建XMLHttp,Request对象 12.3.2 获取XMLHttp,Request对象的信息 12.3.3 向服务器发送请求 12.3.4 处理服务器响应 12.3.5 用户注册实例 12.3.6 处理XML请求 12.3.7 动态列表 第13章 JavaScript安全与异常处理 13.1 JavaScript安全 13.1.1 域策略 13.1.2 IntemetExplorer安全区域 13.2 IE浏览器内建的错误报告 13.3 异常处理 13.3.1 异常类型 13.3.2 触发onError事件处理异常 13.3.3 使用trycatch语句处理异常 13.3.4 Error对象 13.3.5 使用throw语句 13.4 JavaScript调试技法 13.4.1 使用alen()语句 13.4.2 使用write()语句 13.4.3 抛出自定义异常消息 第4篇 JaVflscript特效应用 第14章 JavaScript网页特效 14.1 文字特效 14.1.1 文字向上不间断无缝滚动 14.1 12灼热的文字(IE) 14.1.3 标题栏文字循环向左移动 14.1.4 各种形式输出文字 14.1.5 跑马灯式说明文字 14.1.6 跳动的文字 14.2 图片特效 14.2.1 线性幻灯片 14.2.2 非线性幻灯片 14.2.3 展示翻页效果 14.2.4 展示缩略图新闻效果 14.2.5 图片滑动效果 14.2.6 三维相册 14.3 时间特效 14.3.1 时钟提示自动关闭 14.3.2 日历生成器 14.4 窗口特效 14.4.1 窗口拖动 14.4.2 图层受标签控制显示 14.5 鼠标特效 14.5.1 鼠标方向提示 14.5.2 鼠标控制页面上下移动 14.6 菜单特效 14.6.1 树状菜单 14.6.2 折叠菜单 14.6.3 滑动菜单 14.6.4 右键菜单 ……
javascript完全自学手册 目 录 第1篇 JavaScript基础篇 第1章 JavaScript简介 1 1.1 JavaScript概述 1 1.1.1 什么是JavaScript 1 1.1.2 JavaScript的基本特点 2 1.1.3 常用的Web开发语言 3 1.2 JavaScript的应用 4 1.2.1 客户端应用 5 1.2.2 服务器端应用 5 1.3 在Web页面中使用JavaScript 5 1.3.1 HTML的基本结构 5 1.3.2 在HTML中嵌入JavaScript 7 1.3.3 链接JavaScript文件 9 1.4 编写JavaScript的工具 11 1.4.1 使用纯文本编辑器 11 1.4.2 使用专业化脚本编辑工具 13 1.4.3 使用Microsoft脚本编辑器 15 第2章 JavaScript编程基础 19 2.1 基础语法 19 2.1.1 数据类型 19 2.1.2 变量和常量 22 2.1.3 表达式 24 2.1.4 运算符 24 2.2 流程控制 27 2.2.1 条件语句 27 2.2.2 循环语句 30 2.2.3 其他语句 35 2.3 使用对话框 38 2.3.1 警告对话框 38 2.3.2 确认对话框 40 2.3.3 提示对话框 40 第2篇 JavaScript内置对象篇 第3章 JavaScript内置对象 43 3.1 JavaScript对象概述 43 3.1.1 对象的概念 43 3.1.2 使用JavaScript对象 基础知识 44 3.2 Array对象 46 3.2.1 创建Array对象 46 3.2.2 Array对象属性 47 3.2.3 Array对象方法 48 3.3 String对象 51 3.3.1 创建String对象 51 3.3.2 String对象属性 51 3.3.3 String对象方法 53 3.4 Math对象 56 3.5 Date对象 62 3.5.1 Date对象方法 62 3.5.2 使用Date对象 63 3.6 自定义对象 67 第4章 JavaScript常用对象 73 4.1 Document对象 73 4.1.1 Document对象概述 73 4.1.2 使用Document对象 75 4.2 Form对象及其元素 79 4.2.1 Form对象概述 79 4.2.2 表单元素 80 4.2.3 表单元素属性和事件 82 4.2.4 表单验证 85 4.3 Anchor与Link对象 89 4.3.1 Anchor对象 89 4.3.2 Link对象 90 4.4 Image对象 92 4.4.1 图像翻转 92 4.4.2 图像载入 92 第5章 JavaScript其他常用 窗口对象 96 5.1 Window对象 96 5.1.1 常用属性和方法 97 5.1.2 多窗口控制 100 5.2 Screen对象 103 5.3 Navigator对象 105 5.4 Location对象 107 5.4.1 常用属性和方法 107 5.4.2 Location对象的应用实例 109 5.5 History对象 112 5.5.1 常用属性和方法 112 5.5.2 History对象的应用实例 113 5.6 Frame对象 115 5.6.1 Frame对象概述 115 5.6.2 常用属性 116 5.6.3 Frame对象的应用实例 117 第6章 DOM对象 122 6.1 DOM概述 122 6.1.1 DOM简介 122 6.1.2 DOMHTML文档 124 6.2 DOM对象 125 6.2.1 DOM基本接口 125 6.2.2 DOM基本对象 128 6.3 使用DOM 128 6.3.1 DOM基础 129 6.3.2 Node和NodeList接口 131 6.3.3 Element接口 134 6.3.4 Text接口和Attr接口 136 6.4 操作HTML文档 138 6.4.1 访问元素 138 6.4.2 添加节点 140 6.4.3 删除节点 142 6.4.4 对属性进行操作 146 第3篇 JavaScript高级编程篇 第7章 正则表达式 151 7.1 正则表达式及其作用 151 7.2 正则表达式参考语法 152 7.2.1 限定符 154 7.2.2 选择匹配符 157 7.2.3 分组组合
### 回答1: HTML DOM文档对象模型)是一种编程接口,允许程序访问和操作HTML文档中的元素。使用JavaScript操作HTML DOM可以让网页具有交互性和动态性。 在JavaScript中,可以使用getElementById,getElementsByTagName和getElementsByClassName等方法来获取页面上的元素。例如,通过getElementById("myId")可以获取id为"myId"的元素操作元素的属性和内容也很简单,可以使用如下方法: - 修改元素的属性:element.attribute = new value - 访问元素的属性:element.attribute - 修改元素的内容:element.innerHTML = new content - 访问元素的内容:element.innerHTML 通过操作HTML DOM,可以实现各种交互效果和动态效果。例如,可以在点击按钮时显示或隐藏元素,或在输入框中输入文本时实时更新页面内容等。 ### 回答2: HTML DOMJavaScript操作网页中元素和属性的主要方式之一。在HTML DOM中,文档元素是指HTML页面中所有元素的根节点。文档元素操作包括获取元素、创建元素、删除元素、修改元素属性等。 获取元素HTML DOM操作的重要一环。在JavaScript中,可以使用getElementById()、getElementsByTagName()、getElementsByClassName()等方法获得HTML页面中的元素。其中getElementById()方法可以通过元素的ID获取该元素的引用,常用于根据ID修改元素的属性或内容。而getElementsByTagName()方法可以通过标签名获取HTML页面中所有该标签的元素,例如获取所有的h1元素,常用于对整个页面的控制。getElementsByClassName()方法可以通过class属性获取HTML页面中所有具有该class的元素。 创建元素是向HTML页面中添加元素的重要方式。可以使用createElement()方法创建一个新元素,然后使用appendChild()方法将其添加到现有元素中。例如,创建一个新的p元素,并将其添加到body元素中可以使用以下代码: var newPara = document.createElement("p"); var textNode = document.createTextNode("This is a new paragraph."); newPara.appendChild(textNode); document.body.appendChild(newPara); 删除元素也是HTML DOM中的一个常用操作。可以使用removeChild()方法删除现有元素,例如: var parent = document.getElementById("parent-id"); var child = document.getElementById("child-id"); parent.removeChild(child); 修改元素属性是HTML DOM中的另一个核心操作。可以使用setAttribute()方法修改元素的属性值,例如: var element = document.getElementById("my-id"); element.setAttribute("class", "new-class"); 可以通过HTML DOM操作文档元素,实现对页面元素和属性的各种操作。掌握HTML DOM的知识,可以更好地控制和管理HTML页面。 ### 回答3: HTML DOMJavaScript操作网页元素的主要方式之一,它的核心在于文档对象模型(DOM,Document Object Model),需要熟悉DOM才能灵活操作网页元素文档元素HTML页面中的根元素,它是其他所有元素的祖先元素,也是HTML DOM操作的基础。 一、获取元素JavaScript中,我们可以通过各种方式来获取文档元素,例如getElementById()、getElementsByTagName()、getElementsByClassName()等。其中,通过id、标签名和类名获取元素是最常用的三种方法。 1. getElementById() 此方法用于获取具有指定id属性的元素,其语法为document.getElementById(id)。id属性在整个HTML文档中应该是唯一的。 示例:获取id为“demo”的元素 ``` var demo = document.getElementById("demo”); ``` 2. getElementsByTagName() 此方法用于获取具有指定标签名的元素,其语法为document.getElementsByTagName(tagname)。 示例:获取所有p元素 ``` var pList = document.getElementsByTagName("p"); ``` 3. getElementsByClassName() 此方法用于获取具有指定类名的元素,其语法为document.getElementsByClassName(classname)。 示例:获取类名为“red”的元素 ``` var redList = document.getElementsByClassName("red"); ``` 、改变元素 有很多种方法可以改变文档元素的属性和样式,下面列举一些常见的方法: 1. 修改元素的文本内容 我们可以通过innerHTML属性和innerText属性来修改元素的文本内容。 innerHTML属性用于改变元素HTML内容,其语法为element.innerHTML=new html content; innerText属性用于改变元素的纯文本内容,其语法为element.innerText=new text content; 2. 修改元素的样式 我们可以通过style属性来修改元素的样式,其中style属性包含了元素的所有样式属性。 示例:将id为“demo”的元素背景色改为红色 ``` document.getElementById("demo").style.backgroundColor = "red"; ``` 3. 创建新元素 我们可以使用document.createElement()方法来创建新元素,并通过appendChild()方法将其加入到指定的元素内。 示例:创建一个新的p元素 ``` var newP = document.createElement("p"); ``` 4. 删除元素 我们可以使用parentNode.removeChild()方法来删除指定的元素。 示例:删除id为“demo”的元素 ``` var demo = document.getElementById("demo"); demo.parentNode.removeChild(demo); ``` 三、总结 通过这篇文章的学习,我们了解了HTML DOM的基础知识和基本操作方法,例如获取元素、改变元素的属性和样式以及创建和删除元素等。掌握这些操作方法可以帮助我们更好地操作网页元素,从而实现丰富多彩的网页效果。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

少年游四方

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值