| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> JavaScript知识库 -> javascript基础(10)--DOM和事件 -> 正文阅读 |
|
[JavaScript知识库]javascript基础(10)--DOM和事件 |
DOM:文档对象模型
节点: 节点:Node——构成HTML文档最基本的单元 ,常用节点分为四类。
浏览器已经为我们提供?文档节点?对象这个对象是window属性,可以在页面中直接使用,文档节点代表的是整个网页.
事件事件,就是用户和浏览器之间的交互行为,比如:点击按钮,鼠标移动、关闭窗口等。 处理方式: 我们可以在事件对应的属性中设置一些js代码,这样当事件被触发时,这些代码将会执行,这种写法我们称为结构和行为耦合,不方便维护,不推荐使用。
可以为按钮的对应事件绑定处理函数的形式来响应事件,这样当事件被触发时,其对应的函数将会被调用.像这种为单击事件绑定的函数,我们称为单击响应函数.
3 文档的加载加载顺序:??浏览器在加载一个页面时,是按照自上向下的顺序加载的,读取到一行就运行一行,如果将script标签写到页面的上边,在代码执行时,页面还没有加载,页面没有加载DOM对象也没有加载,会导致无法获取到DOM对象。如果写到前面,需要onload事件。 onload:?onload事件会在整个页面加载完成之后才触发,为window绑定一个onload事件,该事件对应的响应函数将会在页面加载完成之后执行,这样可以确保我们的代码执行时所有的DOM对象已经加载完毕了.
4. DOM查询(获取元素节点)?通过document对象调用
获取元素节点的子节点:
获取父节点和兄弟节点
元素节点的属性
?
获取: 元素对象.属性名
例:element.value
element.id
element.className
设置 : 元素对象.属性名=新的值
例:element.value = “hello”
element.id = “id01”
element.className = “newClass”
注意class属性例外
在document中有一个属性body,它保存的是body的引用:
getElementsByClassName() 可以根据class属性值获取一组元素节点对象,但是该方法不支持IE8及以下的浏览器
其他属性
nodeValue :
文本节点可以通过nodeValue属性获取和设置文本节点的内容
innerHTML:
元素节点通过该属性获取和设置标签内部的html代码
使用CSS选择器进行查询
querySelector()
querySelectorAll()
这两个方法都是用document对象来调用,两个方法使用相同, 都是传递一个选择器字符串作为参数,方法会自动根据选择器 字符串去网页中查找元素。
不同的地方是querySelector()只会返回找到的第一个元素,而 querySelectorAll()会返回所有符合条件的元素。
?
节点的修改
这里的修改我们主要指对元素节点的操作。
创建节点? :document.createElement(标签名)
删除节点 :父节点.removeChild(子节点)
替换节点 :父节点.replaceChild(新节点 , 旧节点)
插入节点 :
父节点.appendChild(子节点)
父节点.insertBefore(新节点 , 旧节点)
通过DOM操作CSS 通过style属性设置和读取的都是内联样式,无法读取样式表中的样式. D
读取元素的样式
? ?clientWidth: ?clientHeight: ?这两个属性可以获取元素的可见宽度和高度 ?这些属性都是不带px的,返回都是一个数字,可以直接进行计算 会获取元素宽度和高度,包括内容区和内边距 ?这些属性都是只读的,不能修改 offsetWidth offsetHeight 获取元素的整个的宽度和高度,包括内容区、内边距和边框 ?offsetParent 可以用来获取当前元素的定位父元素 会获取到离当前元素最近的开启了定位的祖先元素 如果所有的祖先元素都没有开启定位,则返回body offsetLeft ?当前元素相对于其定位父元素的水平偏移量 offsetTop 当前元素相对于其定位父元素的垂直偏移量 scrollWidth scrollHeight 可以获取元素整个滚动区域的宽度和高度 当满足scrollHeight?-?scrollTop?==?clientHeight ????????说明垂直滚动条滚动到底了 ? ?当满足scrollWidth?-?scrollLeft?==?clientWidth ????????说明水平滚动条滚动到底 ????????alert(box4.scrollHeight?-?box4.scrollTop);?//?600 |
|
JavaScript知识库 最新文章 |
ES6的相关知识点 |
react 函数式组件 & react其他一些总结 |
Vue基础超详细 |
前端JS也可以连点成线(Vue中运用 AntVG6) |
Vue事件处理的基本使用 |
Vue后台项目的记录 (一) |
前后端分离vue跨域,devServer配置proxy代理 |
TypeScript |
初识vuex |
vue项目安装包指令收集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年2日历 | -2025/2/5 20:21:39- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |