para.appendChild(node);
最后,您必须向已有元素追加这个新元素。这段代码查找到一个已有的元素:
var element=document.getElementById(“div1”);
向这个已存在的元素追加新元素:
element.appendChild(para)
8.创建新的 HTML 元素 - insertBefore()
insertBefore ,将新增的元素添加为第一个元素。
这是一个段落。
这是另外一个段落。
9.删除已有的 HTML 元素removechild
查找 id=“div1” 的元素:
var parent=document.getElementById(“div1”);
查找 id=“p1” 的<p>
元素:
var child=document.getElementById(“p1”);
从父元素中删除子元素:
parent.removeChild(child);
10.替换子节点属性 replacechild
这是一个段落。
这是另外一个段落。
11.nodeValue 属性
nodeValue 属性规定节点的值。
-
元素节点的 nodeValue 是 undefined 或 null
-
文本节点的 nodeValue 是文本本身
-
属性节点的 nodeValue 是属性值
12.childNodes 和 nodeValue
除了 innerHTML 属性,您也可以使用 childNodes 和 nodeValue 属性来获取元素的内容。
下面的代码获取 id=“intro” 的
元素的值:
Hello World!
13.使用事件
HTML DOM 允许您在事件发生时执行代码。
当 HTML 元素"有事情发生"时,浏览器就会生成事件:
**1.在元素上点击
2.加载页面
3.改变输入字段**
在按钮被点击时改变 <body> 元素的背景色
<input type="button"οnclick="document.body.style.backgroundColor=‘lavender’;"value=“修改背景颜色”>
由函数执行相同的代码
修改文本
14.HTML DOM 节点列表长度
length 属性定义节点列表中节点的数量。
x=document.getElementsByTagName(“p”);
for (i=0;i<x.length;i++)
{
document.write(x[i].innerHTML);
document.write(“
”);
}
获取所有 <p>
元素节点
输出每个 <p>
元素的文本节点的值
15.DOM 根节点
这里有两个特殊的属性,可以访问全部文档:
1.document.documentElement - 全部文档
2.document.body - 文档的主体
16.JS中的节点操作
写几个常用的API, 来操作DOM节点。
(1)document.getElementById()
(2)object.innerHTML该属性设置或返回object之间的HTML
(3)document.createElement()创建节点对象。
(4)document.body.appendChild()尾部插入结点。
(5)object.parentNode.removeChild(oChildNode);移除结点
17.jQuery中的结点操作
(1)添加结点
a. append()和appendTo(), 两个方法是对应的一对儿操作。
$(‘#parentNodeId’).append(childNode);
$(‘#childeNode’).appendTo(parentNode);
b.prepend()和prependTo(), 这也是一对儿对应的操作方法。其作用是添加一个结点到父节点中并前置。用法和上一对儿一样。
c.与之对应的还有after, insertAfter; before, insertBefore等,其用法都和上面的相同。其效果是将新建的元素插入到指定的元素之后/前,并和目标元素紧邻,作为兄弟结点存在。
(2). remove()
remove()方法删除所有匹配的元素,传入的参数用于筛选元素,**该方法可以删除元素中所有的子节点,**当匹配的节点及后代被删除后,该方法返回值是指向被删除结点的引用,因此可以使用该引用,再使用被删除的元素。
$span = $(‘span’).remove();
$span.insertAfter(‘ul’);
示例中,先删除所有的span元素,把删除的元素使用$span接收,把删除后的元素添加到ul后面,作为ul的兄弟结点。该操作产生的效果即把所有的span元素以及后代元素移到ul后面。
(3). empty()
empty()方法严格来讲并不是删除元素,该方法只是清空节点,它能清空元素中的所有子节点。
(3)修改DOM节点
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)
后记
总结一下这三次面试下来我的经验是:
-
一定不要死记硬背,要理解原理,否则面试官一深入就会露馅!
-
代码能力一定要注重,尤其是很多原理性的代码(之前两次让我写过Node中间件,Promise.all,双向绑定原理,被虐的怀疑人生)!
-
尽量从面试官的问题中表现自己知识的深度与广度,让面试官发现你的闪光点!
-
多刷面经!
我把所有遇到的面试题都做了一个整理,并且阅读了很多大牛的博客之后写了解析,免费分享给大家,算是一个感恩回馈吧,有需要的朋友【点击我】获取。祝大家早日拿到自己心怡的工作!
篇幅有限,仅展示部分内容
一个整理,并且阅读了很多大牛的博客之后写了解析,免费分享给大家,算是一个感恩回馈吧,有需要的朋友【点击我】获取。祝大家早日拿到自己心怡的工作!**
篇幅有限,仅展示部分内容