当前位置:网站首页>DOM基础操作
DOM基础操作
2022-07-19 23:36:00 【smile_pbb】
一、DOM简介
DOM:文档对象模型:
它是一套操作HTML和XML文档的API
DOM可以把HTML和XML描述为一个文档树,树上的每一个分支都可以视为一个对象。通过DOM可以添加、修改和移除文档上的某一部分。
概念 | 含义 |
---|---|
文档 | 就是指的html或是xml |
节点 | html文档中的所有文件内容都可以称之为节点 |
元素 | html中的标签可以成为元素 |
文档元素 | 文档中的第一个元素。html中的文档元素就是 |
文本节点 | 标签里的内容 |
属性节点 | 标签中的属性 |
DOM的作用:
找对象(元素)
设置元素的属性
设置元素的样式
动态创建元素
绑定事件
二、获取元素的方法
1.根据ID获取
getElementById() 方法可返回对拥有指定 ID 的第一个对象的引用。
document.getElementById('id名称')
例子:
<img src="image/kitty.png" id="demon" title="小猫" >
<script>
var demon = document.getElementById("demon")
console.log(demon)
</script>
2.根据类名获取
documnet.getElementsByClassName("类名称")
3.根据选择器获取来获取
这个可以说是上边1和2的集合
document.querySelector('.abc')
document.querySelectOR('#abc')
4.根据标签名获取
获取到所有的标签名对应的元素
document.getElementsByTagName('标签名')
实例:
<!DOCTYPE html>
<html>
<style> #test {
width:200px;height:200px;background:yellow;} #test1 {
width:200px;height:200px;background:blue;} .test2 {
width:200px;height:200px;background:red;} </style>
<body>
<div id="test"></div>
<div class="test2"></div>
</body>
<script> var test = document.getElementById("test"); var test2 = document.getElementsByClassName("test2"); var test3 = document.querySelector("#test") var test4 = document.querySelector(".test2") console.log(test); console.log(test2); console.log(test3); console.log(test4); </script>
</html>
三、操作对象
获取完毕节点之后要操作节点。
主要是操作两方面:
1.操作内容
1.1.文本内容
获取文本: 元素.innerText
设置文本内容: 元素.innerText = "新内容"
例子:
<html>
<head>
<meta charset="utf-8">
<style> * {
margin:0px; padding:0px; } /* #data { height:200px; width:200px; } #data1 { height:200px; } */ </style>
</head>
<body>
<div id=data>测试数据</div>
<div id=data1>测试数据1</div>
</body>
<script> var data = document.querySelector("#data"); data.onclick = function abc() {
data.innerText = '张三'; } </script>
</html>
或者
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>改变HTML内容</title>
</head>
<body>
<p id="p1">Hello World!</p>
<button onclick="abc()">按钮</button>
</body>
<script> function abc() {
document.getElementById("p1").innerHTML="新文本!"; } </script>
</html>
2.操作元素的属性
1.原生属性
原生属性就是标签自带的属性
获取:
元素.属性名
设置:
元素.属性名 = ‘属性值’
<html>
<head>
<meta charset="utf-8">
<style> * {
margin:0px; padding:0px; } #data {
height:200px; width:200px; background:yellow; } .data1 {
height:200px; width:200px; background:pink; } </style>
</head>
<body>
<button>按钮 </button>
</body>
<script> var data = document.querySelector("button"); data.onclick = function abc() {
data.id = 'data'; } </script>
</html>
注意:如果给元素添加类选择器语法是:
获取的元素.className = "类选择器"
2.自定义属性
自定义属性就是就是我们自己定义的属性,没有特殊意义,只是记录信息
边栏推荐
- Postgetsql set ID auto increment primary key
- .NET 设置Socket 对象的“TFO”快速打开连接选项(跨平台兼容的)
- Advantages and disadvantages of several popular cross end technology solutions in 2022
- MySQL 19: database and table splitting practice
- .NET 使用自带 DI 批量注入服务(Service)和 后台服务(BackgroundService)
- print-is网页打印
- 读透业务安全白皮书——未来四大趋势
- 在哪个平台买股票最好,最安全?
- Target segmentation for 10000 frames of video, less than 1.4GB of video memory, open source code | ECCV 2022
- npm install报错 npm ERR! 的四种解决办法
猜你喜欢
随机推荐
My creation anniversary
Is it safe to open a stock account online. Where to open a stock account.
完美融入云原生的无代码平台 iVX编辑器实战
MoveIt2——6.规划场景监视器
MoveIt2——7. 场景规划ROS API
重新认识生命世界,也重新认识我们自己
MySQL select query 3
【ROS】roslaunch的使用
如何手写一个js工具库?同时发布到npm上
Print is web page printing
读透业务安全白皮书——未来四大趋势
Revit (22) familyinstance common API encapsulation
announce. Net 7 preview 6
性能测试学习之jmeter单场景使用示例
读书笔记之数据密集型应用的可维护性
[py] join the dictionary
Helm — Chart介绍
洛谷P1918 保龄球
Scaffold cli3
Unity3d gameObject