JAVAscript中的DOM

这篇博客详细介绍了DOM(文档对象模型)的核心概念,包括如何获取、移除、修改和添加页面元素,以及元素的事件绑定和样式操作。此外,还涵盖了节点属性、元素的偏移量和尺寸等关键知识点,是理解网页动态操作的重要参考资料。
摘要由CSDN通过智能技术生成

DOM

DOM(Document Object Model): 文档对象模型

可操作内容

获取一个元素

//通过 js 代码来获取页面中的标签
 document.getElementById//是通过标签的 id 名称来获取标签的
document.getElementsByClassName//标签的 class 名称来获取标签的
document.getElementsByTagName//标签的 标签 名称来获取标签的
document.querySelector//按照选择器的方式来获取元素
	//只能获取到一个元素,并且是页面中第一个满足条件的元素
document.querySelectorAll//选择器的方式来获取元素
	//能获取到所有满足条件的元素,以一个伪数组的形式返回

移除一个元素

`removeChild`//语法:`父节点.removeChild(要移除的字节点)`

修改页面中的某一个节点

`replaceChild`//语法: `父节点.replaceChild(新节点,旧节点)`

创建一个元素

document.createElement('div')//用于创建一个元素节点
document.createTextNode('我是一个文本')//用于创建一个文本节点

向页面里面添加一个元素

Div.appendChild(oText)//语法: `父节点.appendChild(要插入的子节点)`
`insertBefore`//语法: `父节点.insertBefore(要插入的节点,插入在哪一个节点的前面)`

给元素绑定一些事件

元素.事件名=function(){函数}

获取元素的属性

innerHTML 
	获取元素内部的 HTML 结构
	设置元素的内容
innerText
	获取元素内部的文本(只能获取到文本内容,获取不到 html 标签)
	可以设置元素内部的文本
元素.getAttribute()
	获取元素的某个属性(包括自定义属性)
 元素.setAttribute()
	给元素设置一个属性(包括自定义属性)
元素.removeAttribute()
	直接移除元素的某个属性

给元素添加一些 css 样式

style
	专门用来给元素添加 css 样式的
	添加的都是行内样式
className
	专门用来操作元素的 类名的
	也可以设置元素的类名,不过是全覆盖式的操作

DOM节点

元素节点

`getElementBy...` 获取到的都是元素节点

文本节点

`innerText` 获取到的就是元素的文本节点

属性节点


 	getAttribute 获取的就是元素的属性节点获取节点
	Div.childNodes
		获取某一个节点下 所有的子一级节点
	Div.children
		`children` 只要元素节点
	Div.firstChild
		获取某一节点下子一级的 **第一个节点**
	Div.lastChild
		获取某一节点下子一级的 **最后一个节点**
	Div.firstElementChild
		获取某一节点下子一级 第一个元素节点
	Div.lastElementChild
		获取某一节点下子一级 **最后一个元素节点**
	Li.nextSibling
		获取某一个节点的 **下一个兄弟节点**
	Li.previousSibling
		获取某一个节点的 **上一个兄弟节点**
	Li.nextElementSibling
		获取某一个节点的 **下一个元素节点**
	Li.previousElementSibling
		获取某一个节点的 **上一个元素节点**
	Li.parentNode
		获取某一个节点的 **父节点**
	Li.attributes
		获取某一个 **元素节点** 的所有 **属性节点**

节点属性

nodeType
	获取节点的节点类型,用数字表示
nodeName
	获取节点的节点名称
nodeValue
	获取节点的值

获取元素的非行间样式

getComputedStyle
	语法:`window.getComputedStyle(元素, null).要获取的属性`(非IE使用)
currentStyle
	语法: `元素.currentStyle.要获取的属性`IE使用)

获取元素的偏移量

`offsetLeft`
	左边的偏移量
		没有定位的情况下
			获取元素边框外侧到页面内侧的距离
		有定位的情况下
			获取元素边框外侧到定位父级边框内侧的距离(其实就是我们写的 `left``top` 值(margin+position)
`offsetTop`上边的偏移量
`offsetWidth`
`offsetHeight`
	获取元素 `内容宽高 + padding宽高 + border宽高` 的和

元素.clientHeight
	高(只能获取)
		cont+padding
元素.clientWidth
	宽(只能获取)
元素.scrollWidth
	包含滚动的距离(可获取可设置)
元素.scrollHeight
元素.scrollTop
	滚动的距离(必须配合事件)
元素.scrollLeft
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值