前端Javascript(js)-------dom笔记知识点`

简介

  1. 通过 HTML DOM,可访问 JavaScript HTML 文档的所有元素。
  2. 什么是HTML DOM(文档对象模型)?

当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model)

1.改变HTML内容

innerHTML

<html>
<body>

<p id="p1">Hello World!</p>

<script>
document.getElementById("p1").innerHTML="新文本!";
</script>

</body>
</html>
2.改变 HTML 属性
<!DOCTYPE html>
<html>
<body>

<img id="image" src="smiley.gif">

<script>
document.getElementById("image").src="landscape.jpg";
</script>

</body>
</html>
3.改变 HTML 样式
document.getElementById(id).style.property=新样式
4.事件类型

鼠标事件

事件作用
onchange改变
onmousemove鼠标移动
ondblclick双击
onmouseover鼠标移入
onmouseout鼠标移出
onclick点击事件
onmousedown鼠标按下
onmouseup鼠标抬起
onload页面加载完成时
onfocus获取焦点

键盘事件

属性描述
onkeydown键盘按下
onkeyupress键盘按下并松开
onkeyup某个键盘按键被松开
5.addEventListener() 方法

语法:

element.addEventListener(event, function, useCapture);
第一个参数是事件的类型 (如 “click” 或 “mousedown”).
第二个参数是事件触发后调用的函数。
第三个参数是个布尔值用于描述事件是冒泡还是捕获。该参数是可选的。

6.事件冒泡或事件捕获?

事件传递有两种方式:冒泡与捕获。

冒泡 中,内部元素的事件会先被触发,然后再触发外部元素
捕获 中,外部元素的事件会先被触发,然后才会触发内部元素的事件,

7.removeEventListener() 方法

removeEventListener() 方法移除由 addEventListener() 方法添加的事件句柄:

element.removeEventListener(“mousemove”, myFunction);
第一个参数为要移除的事件
第二个参数为要移除事件的函数

8.浏览器支持

注意: IE 8 及更早 IE 版本,Opera 7.0及其更早版本不支持 addEventListener() 和 removeEventListener() 方法。但是,对于这类浏览器版本可以使用 detachEvent() 方法来移除事件句柄:
跨浏览器解决方法

var x = document.getElementById("myBtn");
if (x.addEventListener) {                    // 所有主流浏览器,除了 IE 8 及更早版本
    x.addEventListener("click", myFunction);
} else if (x.attachEvent) {                  // IE 8 及更早版本
    x.attachEvent("onclick", myFunction);
}
9.创建节点
1. appendChild()方法,用于添加新元素到尾部

以下代码是用于创建<p>元素:

var para = document.createElement(“p”);

<p> 元素创建一个新的文本节点:

var node = document.createTextNode(“这是一个新的段落。”);

将文本节点添加到 <p> 元素中:

para.appendChild(node);

最后,在一个已存在的元素中添加 p 元素。

查找已存在的元素:

var element = document.getElementById(“div1”);

添加到已存在的元素中:

element.appendChild(para);

2.insertBefore()方法用于添加到开始位置

第一个参数为创建的节点
第二个参数为已有节点

10.移除元素(从父元素移除子节点)

parent.removeChild(child);

11.替换HTML元素-replaceChild()

在父元素上替换子节点

parent.replaceChild(para, child);
第一个参数:新节点
第二个参数:要替换的节点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值