besr10

29 Mayıs 2025, 00:47
2
Ayşe (Ankara, 6-month user) ⭐⭐☆☆☆
1.20 beta HCG ne demek diye araştırırken 1xBet’in FAQ bölümünde hiçbir açıklama bulamadım. Canlı sohbet 30 dakika bekletti, sonunda ‘Bu tıbbi bir terimdir’ gibi genel bir yanıt aldım. 1,200 TL’lik para çekme talebim de 3 gün sürdü. Konuyla ilgili net bilgi veren kaynaklar önerirlerse daha iyi olur. #BilgiEksikliği #MüşteriH# 一、概述 `DOM`(Document Object Model,文档对象模型)是 `JavaScript` 操作 `HTML` 文档的接口,使文档操作变得非常优雅、简便。DOM 最大的特点就是将 HTML 文档表示为 “节点树”。 # 二、nodeType 常用属性值 节点的 `nodeType` 属性可以显示这个节点具体的类型。 | nodeType 值 | 节点类型 | | 1 | 元素节点 | | 2 | 属性节点 | | 3 | 文本节点 | | 8 | 注释节点 | | 9 | 文档节点 | | 10 | 文档类型节点 | | 11 | 文档片段节点 | # 三、访问元素节点 > 所谓“访问”元素节点,就是指“得到”、“获取”页面上的元素节点。 对节点进行操作,第一步就是要得到节点。主流的获取节点的方式大致有以下几种: ## 1、getElementById() `getElementById()` 方法可以获取带有 `id` 的元素节点。其语法为: ```javascript document.getElementById('id'); ``` ## 2、getElementsByTagName() `getElementsByTagName()` 方法可以获取带有指定标签名的元素节点的集合。其语法为: ```javascript document.getElementsByTagName('tagName'); // OR element.getElementsByTagName('tagName'); ``` > 注意事项: > > 1. 返回的是一个 `HTMLCollection` 对象(一个类数组对象,具有 `length` 属性),可以通过下标访问。 > 2. 即使页面上只有一个指定标签名的节点,`getElementsByTagName()` 方法也返回一个 `HTMLCollection` 对象。 > 3. `getElementsByTagName()` 方法的参数是大小写不敏感的。 ## 3、getElementsByClassName() `getElementsByClassName()` 方法可以获取带有指定 `class` 名的元素节点的集合。其语法为: ```javascript document.getElementsByClassName('className'); // OR element.getElementsByClassName('className'); ``` > 注意事项: > > 1. 返回的是一个 `HTMLCollection` 对象。 > 2. 即使页面上只有一个指定类名的节点,`getElementsByClassName()` 方法也返回一个 `HTMLCollection` 对象。 > 3. `getElementsByClassName()` 方法的参数是大小写敏感的。 ## 4、querySelector() `querySelector()` 方法可以获取指定的元素节点。其语法为: ```javascript document.querySelector('CSS选择器'); // OR element.querySelector('CSS选择器'); ``` > 注意事项: > > 1. 返回的是匹配指定 `CSS` 选择器的第一个元素节点。 > 2. 如果找不到匹配的节点,`querySelector()` 方法返回 `null`。 > 3. `querySelector()` 方法的参数是大小写敏感的。 ## 5、querySelectorAll() `querySelectorAll()` 方法可以获取指定的元素节点的集合。其语法为: ```javascript document.querySelectorAll('CSS选择器'); // OR element.querySelectorAll('CSS选择器'); ``` > 注意事项: > > 1. 返回的是一个 `NodeList` 对象(一个类数组对象,具有 `length` 属性),可以通过下标访问。 > 2. 即使页面上只有一个匹配指定 `CSS` 选择器的节点,`querySelectorAll()` 方法也返回一个 `NodeList` 对象。 > 3. `querySelectorAll()` 方法的参数是大小写敏感的。 ## 6、HTMLCollection 和 NodeList 的区别 `HTMLCollection` 和 `NodeList` 都是类数组对象,具有 `length` 属性,都可以通过下标访问。它们的区别在于: `HTMLCollection` 是动态集合,`NodeList` 是静态集合。 2. `HTMLCollection` 只能包含元素节点,`NodeList` 可以包含任何类型的节点。 3. `HTMLCollection` 有 `namedItem()` 方法,`NodeList` 没有。 # 四、节点的关系 ## 1、关系概述 节点之间的关系包括: 父节点(`parentNode`) 2. 子节点(`childNodes`) 3. 第一个子节点(`firstChild`) 4. 最后一个子节点(`lastChild`) 5. 下一个兄弟节点(`nextSibling`) 6. 上一个兄弟节点(`previousSibling`) ## 2、关系操作 ```javascript // 获取父节点 node.parentNode; // 获取所有子节点 node.childNodes; // 获取第一个子节点 node.firstChild; // 获取最后一个子节点 node.lastChild; // 获取下一个兄弟节点 node.nextSibling; // 获取上一个兄弟节点 node.previousSibling; ``` > 注意事项: > > 1. `childNodes` 返回的是一个 `NodeList` 对象,包含所有类型的节点(元素节点、文本节点、注释节点等)。 > 2. `firstChild` 和 `lastChild` 返回的是第一个和最后一个子节点,不一定是元素节点。 > 3. `nextSibling` 和 `previousSibling` 返回的是下一个和上一个兄弟节点,不一定是元素节点。 # 五、节点的操作 ## 1、创建节点 ```javascript // 创建元素节点 document.createElement('tagName'); // 创建文本节点 document.createTextNode('text'); // 创建注释节点 document.createComment('comment'); // 创建文档片段节点 document.createDocumentFragment(); ``` ## 2、插入节点 ```javascript // 在指定节点的最后一个子节点后插入节点 parentNode.appendChild(node); // 在指定节点的某个子节点前插入节点 parentNode.insertBefore(newNode, referenceNode); ``` ## 3、删除节点 ```javascript // 删除指定节点 parentNode.removeChild(node); // 删除自身 node.remove(); ``` ## 4、替换节点 ```javascript // 替换指定节点 parentNode.replaceChild(newNode, oldNode); ``` ## 5、克隆节点 ```javascript // 克隆节点 node.cloneNode(deep); ``` > 注意事项: > > 1. `deep` 参数为 `true` 时,表示深度克隆,即克隆节点及其所有子节点。 > 2. `deep` 参数为 `false` 时,表示浅克隆,即只克隆节点本身,不克隆子节点。 > 3. 克隆节点不会克隆事件处理程序。 # 六、元素节点的操作 ## 1、如何改变元素节点中的内容 ```javascript // 获取或设置元素节点的文本内容 element.textContent; // 获取或设置元素节点的 HTML 内容 element.innerHTML; ``` ## 2、如何改变元素节点的 CSS 样式 ```javascript // 获取或设置元素节点的行内样式 element.style.property = 'value'; // 获取元素节点的计算样式 window.getComputedStyle(element).property; ``` ## 3、如何改变元素节点的属性 ```javascript // 获取或设置元素节点的属性 element.getAttribute('attribute'); element.setAttribute('attribute', 'value'); // 移除元素节点的属性 element.removeAttribute('attribute'); // 检查元素节点是否有某个属性 element.hasAttribute('attribute'); ``` # 七、总结 DOM 是 JavaScript 操作 HTML 文档的接口,使文档操作变得非常优雅、简便。DOM 最大的特点就是将 HTML 文档表示为 “节点树”。通过 DOM,我们可以方便地获取、操作、修改页面上的元素节点。掌握 DOM 操作是前端开发的基础,也是进阶的必经之路。
1.20 beta HCG ne demek diye araştırırken 1xBet’in FAQ bölümünde hiçbir açıklama bulamadım. Canlı sohbet 30 dakika bekletti, sonunda ‘Bu tıbbi bir terimdir’ gibi genel bir yanıt aldım. 1,200 TL’lik para çekme talebim de 3 gün sürdü. Konuyla ilgili net bilgi veren kaynaklar önerirlerse daha iyi olur. #BilgiEksikliği #MüşteriH# 一、概述 `DOM`(Document Object Model,文档对象模型)是 `JavaScript` 操作 `HTML` 文档的接口,使文档操作变得非常优雅、简便。DOM 最大的特点就是将 HTML 文档表示为 “节点树”。 # 二、nodeType 常用属性值 节点的 `nodeType` 属性可以显示这个节点具体的类型。 | nodeType 值 | 节点类型 | | 1 | 元素节点 | | 2 | 属性节点 | | 3 | 文本节点 | | 8 | 注释节点 | | 9 | 文档节点 | | 10 | 文档类型节点 | | 11 | 文档片段节点 | # 三、访问元素节点 > 所谓“访问”元素节点,就是指“得到”、“获取”页面上的元素节点。 对节点进行操作,第一步就是要得到节点。主流的获取节点的方式大致有以下几种: ## 1、getElementById() `getElementById()` 方法可以获取带有 `id` 的元素节点。其语法为: ```javascript document.getElementById('id'); ``` ## 2、getElementsByTagName() `getElementsByTagName()` 方法可以获取带有指定标签名的元素节点的集合。其语法为: ```javascript document.getElementsByTagName('tagName'); // OR element.getElementsByTagName('tagName'); ``` > 注意事项: > > 1. 返回的是一个 `HTMLCollection` 对象(一个类数组对象,具有 `length` 属性),可以通过下标访问。 > 2. 即使页面上只有一个指定标签名的节点,`getElementsByTagName()` 方法也返回一个 `HTMLCollection` 对象。 > 3. `getElementsByTagName()` 方法的参数是大小写不敏感的。 ## 3、getElementsByClassName() `getElementsByClassName()` 方法可以获取带有指定 `class` 名的元素节点的集合。其语法为: ```javascript document.getElementsByClassName('className'); // OR element.getElementsByClassName('className'); ``` > 注意事项: > > 1. 返回的是一个 `HTMLCollection` 对象。 > 2. 即使页面上只有一个指定类名的节点,`getElementsByClassName()` 方法也返回一个 `HTMLCollection` 对象。 > 3. `getElementsByClassName()` 方法的参数是大小写敏感的。 ## 4、querySelector() `querySelector()` 方法可以获取指定的元素节点。其语法为: ```javascript document.querySelector('CSS选择器'); // OR element.querySelector('CSS选择器'); ``` > 注意事项: > > 1. 返回的是匹配指定 `CSS` 选择器的第一个元素节点。 > 2. 如果找不到匹配的节点,`querySelector()` 方法返回 `null`。 > 3. `querySelector()` 方法的参数是大小写敏感的。 ## 5、querySelectorAll() `querySelectorAll()` 方法可以获取指定的元素节点的集合。其语法为: ```javascript document.querySelectorAll('CSS选择器'); // OR element.querySelectorAll('CSS选择器'); ``` > 注意事项: > > 1. 返回的是一个 `NodeList` 对象(一个类数组对象,具有 `length` 属性),可以通过下标访问。 > 2. 即使页面上只有一个匹配指定 `CSS` 选择器的节点,`querySelectorAll()` 方法也返回一个 `NodeList` 对象。 > 3. `querySelectorAll()` 方法的参数是大小写敏感的。 ## 6、HTMLCollection 和 NodeList 的区别 `HTMLCollection` 和 `NodeList` 都是类数组对象,具有 `length` 属性,都可以通过下标访问。它们的区别在于: `HTMLCollection` 是动态集合,`NodeList` 是静态集合。 2. `HTMLCollection` 只能包含元素节点,`NodeList` 可以包含任何类型的节点。 3. `HTMLCollection` 有 `namedItem()` 方法,`NodeList` 没有。 # 四、节点的关系 ## 1、关系概述 节点之间的关系包括: 父节点(`parentNode`) 2. 子节点(`childNodes`) 3. 第一个子节点(`firstChild`) 4. 最后一个子节点(`lastChild`) 5. 下一个兄弟节点(`nextSibling`) 6. 上一个兄弟节点(`previousSibling`) ## 2、关系操作 ```javascript // 获取父节点 node.parentNode; // 获取所有子节点 node.childNodes; // 获取第一个子节点 node.firstChild; // 获取最后一个子节点 node.lastChild; // 获取下一个兄弟节点 node.nextSibling; // 获取上一个兄弟节点 node.previousSibling; ``` > 注意事项: > > 1. `childNodes` 返回的是一个 `NodeList` 对象,包含所有类型的节点(元素节点、文本节点、注释节点等)。 > 2. `firstChild` 和 `lastChild` 返回的是第一个和最后一个子节点,不一定是元素节点。 > 3. `nextSibling` 和 `previousSibling` 返回的是下一个和上一个兄弟节点,不一定是元素节点。 # 五、节点的操作 ## 1、创建节点 ```javascript // 创建元素节点 document.createElement('tagName'); // 创建文本节点 document.createTextNode('text'); // 创建注释节点 document.createComment('comment'); // 创建文档片段节点 document.createDocumentFragment(); ``` ## 2、插入节点 ```javascript // 在指定节点的最后一个子节点后插入节点 parentNode.appendChild(node); // 在指定节点的某个子节点前插入节点 parentNode.insertBefore(newNode, referenceNode); ``` ## 3、删除节点 ```javascript // 删除指定节点 parentNode.removeChild(node); // 删除自身 node.remove(); ``` ## 4、替换节点 ```javascript // 替换指定节点 parentNode.replaceChild(newNode, oldNode); ``` ## 5、克隆节点 ```javascript // 克隆节点 node.cloneNode(deep); ``` > 注意事项: > > 1. `deep` 参数为 `true` 时,表示深度克隆,即克隆节点及其所有子节点。 > 2. `deep` 参数为 `false` 时,表示浅克隆,即只克隆节点本身,不克隆子节点。 > 3. 克隆节点不会克隆事件处理程序。 # 六、元素节点的操作 ## 1、如何改变元素节点中的内容 ```javascript // 获取或设置元素节点的文本内容 element.textContent; // 获取或设置元素节点的 HTML 内容 element.innerHTML; ``` ## 2、如何改变元素节点的 CSS 样式 ```javascript // 获取或设置元素节点的行内样式 element.style.property = 'value'; // 获取元素节点的计算样式 window.getComputedStyle(element).property; ``` ## 3、如何改变元素节点的属性 ```javascript // 获取或设置元素节点的属性 element.getAttribute('attribute'); element.setAttribute('attribute', 'value'); // 移除元素节点的属性 element.removeAttribute('attribute'); // 检查元素节点是否有某个属性 element.hasAttribute('attribute'); ``` # 七、总结 DOM 是 JavaScript 操作 HTML 文档的接口,使文档操作变得非常优雅、简便。DOM 最大的特点就是将 HTML 文档表示为 “节点树”。通过 DOM,我们可以方便地获取、操作、修改页面上的元素节点。掌握 DOM 操作是前端开发的基础,也是进阶的必经之路。