Dom模型
1.dom之对象分类
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>对象分类</title> </head>
<body>
<div id="div1">
<div ></div>
<p></p>
</div>
<script type="text/javascript"> /*在DOM(文档对象模型中,也是一切都是对象,但是范围很小,就只有几个
1.document object
2.element object
3.text object
4.attribute object
5.comment object
5个对象封装到一个Node object中。node object有
自己的节点属性:
attribute;nodeType;nodeName;nodeValue;innerHTML;
导航属性:
parentNode
firstChild
lastChild
childNodes
由于上面的5个属性都是封装到一个Node Object中,所以我们可以直接使用这些属性。/
*/
var ele=document.getElementById("div1");
//自身属性
console.log(ele.nodeName);
console.log(ele.nodeType);
console.log(ele.nodeValue);
//导航属性之firstChild
var ele2=ele.firstChild;
alert(ele2.nodeName);//#text 结果令人惊讶,原来2个div之间有一些空格,这些就是造成是文本的原因 var ele3=ele.childNodes;
alert(ele3.length);//5,js把空白区域当成了文本
var parent=ele.parentNode;
alert(parent);
</script>
</body>
</html>
2.dom对象模型的根据文档树结构进行导航。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>对象分类</title> </head>
<body>
<div id="div1">
<div ></div>
<p></p>
</div>
<script type="text/javascript"> /*在DOM(文档对象模型中,也是一切都是对象,但是范围很小,就只有几个
1.document object
2.element object
3.text object
4.attribute object
5.comment object
5个对象封装到一个Node object中。node object有
自己的节点属性:
attribute;nodeType;nodeName;nodeValue;innerHTML;
导航属性:
parentNode
firstChild
lastChild
childNodes
由于上面的5个属性都是封装到一个Node Object中,所以我们可以直接使用这些属性。/
*/
var ele=document.getElementById("div1");
/* //自身属性
console.log(ele.nodeName);
console.log(ele.nodeType);
console.log(ele.nodeValue);
//导航属性之firstChild
var ele2=ele.firstChild;
alert(ele2.nodeName);//#text 结果令人惊讶,原来2个div之间有一些空格,这些就是造成是文本的原因 var ele3=ele.childNodes;
alert(ele3.length);//5,js把空白区域当成了文本
var parent=ele.parentNode;
alert(parent);*/
//既然firstChild不行,但是firstElementChild可以
var ele_son=ele.firstElementChild;
alert(ele_son.nodeName);
//lastElementChild
var last=ele.lastElementChild;
alert(last.nodeName);
//所有节点children
var ele_nodes=ele.children;
alert(ele_nodes.length);
alert(ele_nodes[0].nodeName); for(var i=0;i<ele_nodes.length;i++){
console.log(ele_nodes[i].nodeName);
}
//nextElementSibling,兄弟元素节点,记住没有空白文档 var sib=ele.firstElementChild;
console.log(sib.nextElementSibling.nodeName);
</script>
</body>
</html>
3.全局查找和局部查找
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>查找</title>
</head>
<body>
<div id="div1">hello
<div class="div2">hello2</div>
<div class="div3" name="lizebo">hello3
<p>hello inner</p>
<p id="p1">world innerhtml</p>
</div>
<p>hello,browser</p>
</div>
<script type="text/javascript">
//这里注意一下啊,这里为什么是elements,而不是element。这是有意义的,因为
//设计者知道以class命名元素可能有多个,而id只能有一个。
//1.通过id 选择器:document.getElementById();
//2.通过class选择器
var ele=document.getElementsByClassName("div2");
console.log(ele[0].nodeName);
console.log(ele[0].innerHTML);
//3通过tag
var tagnames=document.getElementsByTagName("p");
console.log(tagnames);
console.log(tagnames[0].innerHTML);
//4.通过名字,虽然用的不多,但是可以用这个
var names=document.getElementsByName("lizebo");
console.log(names[0].nodeName); /*局部去找也就是不通过document找,那么只有用element了,都差不多,这个怎么方便怎么用。*/
var els=document.getElementsByClassName("div3")[0];
var jubu=els.getElementsByTagName("p");
console.log(jubu[0].innerHTML); </script>
</body>
</html>
Dom模型的更多相关文章
- DOM模型有三种
<!-- DOM模型有三种: DOM level 1:将HTML文档封装成对象. DOM level 2:在level 1基础加入新功能,比如解析名称空间. //<html xmlns=& ...
- JavaScript DOM编程基础精华01(DOM入门,DOM模型和获取页面元素,事件,window对象的方法)
DOM入门 DOM就是Html页面的模型,将每个标签都做为一个对象,JavaScript通过调用DOM中的属性.方法就可以对网页中的文本框.层等元素进行编程控制.比如通过操作文本框的DOM对象,就可以 ...
- JavaScript---网络编程(7)-Dom模型(节点间的层次关系,节点的增、删、改)
利用节点间的层次关系获取节点: 上一节讲了3中获取的方式: * ※※一.绝对获取,获取元素的3种方式:-Element * 1.getElementById(): 通过标签中的id属性值获来取该标签对 ...
- JavaScript---网络编程(5)-自定义对象Json、Dom模型概念讲解
这节博客主要讲解Dom模型概念~和JSON的简单介绍 首先,还是先上out.js的代码: function println(param){ document.write(param+"< ...
- Fireworks Extension —— 开发篇(Dom模型)
如上一篇博文所叙述的,一个很偶然的机会,我得知可以使用Javascript开发Fireworks插件,又注意到了视觉小伙伴的需求,于是便上手开发Fireworks Extension了. 很幸运的,在 ...
- 整理之DOM事件阶段、冒泡与捕获、事件委托、ie事件和dom模型事件、鼠标事件
整理之DOM事件阶段 本文主要解决的问题: 事件流 DOM事件流的三个阶段 先理解流的概念 在现今的JavaScript中随处可见.比如说React中的单向数据流,Node中的流,又或是今天本文所讲的 ...
- 总结一下自己脑海里的JavaScript吧(一)--DOM模型
今天是2019年6月25日,闲来无事,写一篇文章来看看自己脑袋里装了多少JavaScript知识! 这儿就第一章: 说起JavaScript,它是什么?后端脚本语言?前端编程语言?还是在网站浏览器上运 ...
- 肆、js的DOM模型
一.网页中的dom模型框架 1.dom中的3中节点:元素节点.文本节点.属性节点 a.元素节点:html中的各种标签就是各个元素节点,元素节点可以包含其他元素,只有html根节点例外. b.文本节点: ...
- 浏览器内核之 HTML 解释器和 DOM 模型
微信公众号:爱写bugger的阿拉斯加如有问题或建议,请后台留言,我会尽力解决你的问题. 前言 此文章是我最近在看的[WebKit 技术内幕]一书的一些理解和做的笔记.而[WebKit 技术内幕]是基 ...
- JavaScript的事件、DOM模型、事件流模型以及内置对象详解(三)
JS中的事件 JS中的事件分类 1.鼠标事件: click/dbclick/mouseover/mouseout 2.HTML事件: onload/onunload/onsubmit/onresize ...
随机推荐
- UVa225,Golygons
刘儒家翻译的走出的图形可以自交,不知道大家是怎么理解的,反正我是认为这句话的意思是告诉我允许一个点访问多次 这样是WA的,n=15和n=16时多输出很多数据,应该是不允许自交,也就是不允许一个点访问多 ...
- 用 Eclipse 创建一个简单的web项目
Eclipse neon 汉化版 ; 1;右击新建 --> 选择 动态Web项目 2: 填写 项目名 项目位置 ; 选择 Dynamic web module version 和 tomca ...
- JQuery-基础学习1
1)JQuery语法 jquery语法是为HTML元素的选取编制,可以对元素执行某些操作. 基础语法是:$(selector).action() 美元符号定义JQuery 选择符(selector)& ...
- BandwagonHost搬瓦工VPS自建
地址:https://bwh1.net/aff.php?aff=18648 ,购买$2.99的就够用了(现在没有$2.99的了,最低是$4.99) 步骤一: 步骤二: 步骤三:选图中的选项,然后点 A ...
- 基于容器微服务的PaaS云平台设计(二)通过kubernetes实现微服务容器管理
版权声明:本文为博主原创文章,欢迎转载,转载请注明作者.原文超链接 ,博主地址:http://www.cnblogs.com/SuperXJ/ 上一章描述了基于spring cloud的微服务实例(实 ...
- 【机器学习实战】第12章 使用FP-growth算法来高效发现频繁项集
第12章 使用FP-growth算法来高效发现频繁项集 前言 在 第11章 时我们已经介绍了用 Apriori 算法发现 频繁项集 与 关联规则.本章将继续关注发现 频繁项集 这一任务,并使用 FP- ...
- Python入门学习(一)
看完了莫烦Python的视频,对于Python有了一点感觉,接下来打算把小甲鱼的视频啃完,附上学习网址:http://blog.fishc.com/category/python 小甲鱼的视频是从零基 ...
- mouseover事件mouseenter事件
1. mouseover:会在鼠标进入该元素或者该元素的子元素时触发 mouseenter:只在鼠标进入该元素时触发 mouseout:在鼠标移出该元素或则该元素的子元素时触发 mouseleave: ...
- form 表单处理
submit相关 当使用 submit 按钮或者 image 或者button type="submit" 来提交表单时,会触发 submit 事件,但是直接javascri ...
- ACID 数据库正确执行四要素
ACID:数据库事务正确执行所必须满足的四个基本要素的缩写: 原子性(atomicity,或叫不可分割性),一致性(consistency),隔离性(isolation,又称独立性),持久性(dura ...