文档对象模型-DOM(二)

从NodeList中选择元素

方法一:item()方法,用于返回其中的单一节点,需要在方法的参数中指定所需元素的索引编号。

当其中没有任何元素时,执行代码是对资源的浪费。因此程序员会在执行代码之前,先检查一下在NodeList中是否至少包含一个节点。

可以使用length方法来实现。举例如下:

1             var elements = document.getElementsByClassName(‘hot‘);
2             if(elements.length>=0){
3                 var firstItem = elements.item(0);
4             }

方法二:数组语法,可以使用括号语法来访问其中一个元素,就像访问数组中的单一项一样,需要在NodeList后面的中括号里指定所需的索引编号。举例如下:‘

1             var elements = document.getElementsByClassName(‘hot‘);
2             if(elements.length>=0){
3                 var firstItem = elements[0];
4             }

使用class属性选择元素

 1 var elements = document.getElementsByClassName(‘hot‘); // 找到class值为‘hot‘的所有元素
 2 if (elements.length > 2) {
 3   var el = elements[2];    // 选择第三个元素并缓存到el
 4   el.className = ‘cool‘;   // 将第三个元素的值替换为‘cool‘
 5 }

使用标签名选择元素

getElementsByTagName()方法
1 var elements = document.getElementsByTagName(‘li‘); // 找到<li>标签的多有元素
2 if (elements.length > 0) {
3   var el = elements[0];
4   el.className = ‘cool‘;
5 }

使用class选择器选择元素

querySelector()  //返回第一个匹配的元素;querySelectorAll() //返回匹配的所有元素

1 var el = document.querySelector(‘li.hot‘);
2 el.className = ‘cool‘;
3 var els = document.querySelectorAll(‘li.hot‘);
4 els[1].className = ‘cool‘;

循环遍历NodeList

1 var hotItem = document.querySelectorAll(‘li.hot‘);
2 for(var i=0;i<hotItems.length;i++){
3     hotItems[i].className=‘cool‘;
4 }

 对前后兄弟节点的操作

html代码:

1       <ul>
2         <li id="one" class="hot"><em>fresh</em> figs</li>
3         <li id="two" class="hot">pine nuts</li>
4         <li id="three" class="hot">honey</li>
5         <li id="four">balsamic vinegar</li>
6       </ul>

js代码:

1 // Select the starting point and find its siblings.
2 var startItem = document.getElementById(‘two‘);
3 var prevItem = startItem.previousSibling;
4 var nextItem = startItem.nextSibling;
5 // Change the values of the siblings‘ class attributes.
6 prevItem.className = ‘complete‘;
7 nextItem.className = ‘cool‘;

对子节点操作

html代码同上

js代码:

1 // Select the starting point and find its children.
2 var startItem = document.getElementsByTagName(‘ul‘)[0];
3 var firstItem = startItem.firstChild;
4 var lastItem = startItem.lastChild;
5 // Change the values of the children‘s class attributes.
6 firstItem.className = ‘complete‘;
7 lastItem.className = ‘cool‘;

  

时间: 2024-10-06 05:04:11

文档对象模型-DOM(二)的相关文章

XML简明教程——文档对象模型——DOM和SAX(二)

DOM概述: DOM是一种典型的基于XML文档树状结构的解析技术.从概念上看,DOM的解析方式非常容易理解.DOM首先加载XML文档,并把XML树状结构存放到计算机内存中做进一步处理. 1.DOM与XML基于树状结构的解析模式 1.1XML基于树状结构的解析模式 XML文档中的文档类型描述.元素.属性.处理指令.注释和文本内容都可以视为状态树的节点.虽然从XML文档本身和XPath的角度来看,节点的含义略有不同,但是,一个XML文档能够被看作是按照一定层次结构分布的节点树. 当一个XML文档被以

XML简明教程——文档对象模型——DOM和SAX(一)

概述 SAX是基于事件解析XML文档的代表性技术.SAX通过扫描XML文档的内容,对元素,属性和文本数据内容等逐一分析和处理. 1.XML基于时间的解析模式 基于事件的解析是指XML处理程序线性描述一个XML文档,当XML处理出鞥许从文档的开头至结尾读取XML文档的过程中,逐一分析和处理遇到的元素.属性和字符数据等. [例子1]奥运金牌榜XML文件: <?xml version = "1.0" encoding = "UTF-8"?> <?xml-

文档对象模型-DOM

DOM定义 个人关于文档对象模型的理解是我们日常开发的页面的各个基本结构,如HTML,Head,Body,..但是小红书上的解释是针对XML但经过扩展用于HTML的应用程序编程接口(API,Application Programming Interface).DOM可以把页面映射为一个多层节点结构,把HTML或XML页面中的每个组成部分都当成是某种类型的节点,这些节点又包含着不同类型的数据,而通过DOM创建的这个表示文档的树形图,开发人员就能够主动的控制页面内容和结构. DOM级别 DOM1级:

文档对象模型-DOM(一)

首先看一下DOM树结构: 每个节点都是一个对象,拥有方法和属性. 脚本可以访问以及更新DOM树(不是源代码). 针对DOM树的修改都会反映到浏览器. 访问并更新DOM树需要两个步骤:   一.定位到与需要操作的元素所对应的节点 访问元素的相关方法和属性 1.选择单个元素节点方法 (1) getElementById() //使用元素的id属性(在页面中应是唯一) (2) querySelector() //使用css选择器,返回第一个匹配的元素 (3) 通过使用在DOM树中从第一个元素遍历到另一

文档对象模型——DOM

DOM:文档对象模型,核心对象document,对html元素的样式(颜色.属性.位置).内容.属性进行动态的改变和操作 一.document对象 1.属性 title   返回或设置当前文档的标题   //document.title="标题名" URL   返回当前文档的url            //只能获取不能设置 bgColor  设置文档的背景色 fgColor   设置文档的前景色(设置文字颜色) 2.方法(获取元素的方法) document.getElementByI

DOM 文档对象模型+倒计时

DOM 文档对象模型 DOM (document object model) 文档对象模型,它定义了操作文档对象的接口. DOM 把一份html文档表示为一棵家谱树,使用parent(父), child(子), sibling(兄弟)等记号来表明家庭成员之间的关系. 通过可编程的对象模型,JavaScript 获得了足够的能力来创建动态的 HTML. JavaScript 能够改变页面中的所有 HTML 元素 JavaScript 能够改变页面中的所有 HTML 属性 JavaScript 能够

JavaScript DOM(二)

HTML元素特性与DOM属性 Element类型节点 Text类型节点 HTML元素特性与DOM属性 HTML标签中的attribute和DOM对象的property是比较容易混淆的两个概念,实际上这二者对于理解"文档对象模型"是十分重要的.通常我们会把HTML标签的attribute译为"特性"而把DOM对象的property译为"属性". 文档对象模型(DOM)是针对HTML和XML文档的一个API.DOM描绘了一个层次化的节点树,它允许我们

JavaScript(三、DOM文档对象模型)

一.什么是DOM DOM 是 Document Object Model(文档对象模型)的缩写. DOM 是 W3C(万维网联盟)的标准. DOM 定义了访问 HTML 和 XML 文档的标准: "W3C 文档对象模型 (DOM) 是中立于平台和语言的接口,它允许程序和脚本动态地访问和更新文档的内容.结构和样式." W3C DOM 标准被分为 3 个不同的部分: 核心 DOM - 针对任何结构化文档的标准模型 XML DOM - 针对 XML 文档的标准模型 HTML DOM - 针对

JavaScript笔记03——文档对象模型(Document Object Model,简称DOM)

Dom技术使得用户页面可以动态地变化,如可以动态地显示或隐藏一个元素,改变它们的属性,增加一个元素等,Dom技术使得页面的交互性大大地增强.[1] DOM实际上是以面向对象方式描述的文档模型.DOM定义了表示和修改文档所需的对象.这些对象的行为和属性以及这些对象之间的关系.可以把DOM认为是页面上数据和结构的一个树形表示,不过页面当然可能并不是以这种树的方式具体实现. 通过 JavaScript,您可以重构整个 HTML 文档.您可以添加.移除.改变或重排页面上的项目. 要改变页面的某个东西,J