web前端之JavaScript DOM编程艺术之DOM
来源:互联网 发布:it行业 云计算 编辑:程序博客网 时间:2024/05/01 16:31
web前端之JavaScript DOM编程艺术之DOM
5个常用DOM方法:getElementById,getElementsByTagName,getElementsByClassName,getAttribute和setAttribute
文档:DOM中的”D”:
如果没有document(文档),DOM无从谈起。
对象:DOM中的”O”:
用户定义对象(user-defined object):有程序员自行创建的对象
内建对象(native object):内建在JavaScript语言里的对象,如Array、Math、Date等
宿主对象(host object):由浏览器提供的对象,如window
模型:DOM中的”M”:
DOM代表着加载到浏览器窗口的当前网页,浏览器提供了网页的模型,我们就通过JavaScript去读取这个模型
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"><head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>Shopping list</title></head><body> <h1>What to buy</h1> <p title="a gentle reminder">Don't forget to buy this stuff.</p> <ul id="purchases"> <li>A tin of beans</li> <li class="sale">Cheese</li> <li class="sale important">Milk</li> </ul></body></html>
html:为整个程序的根目录
head,body:为整个程序的子目录
……
综上,html文档可以看成”节点树”
节点:
元素节点:
html、p、ul等都属于元素节点
文本节点:
<p>这中间的文字就是文本节点</p>
属性节点:
<p title="reminder">这中间的文字就是文本节点</p>
title=”reminder”就是p的属性节点
CSS:
CSS(层叠样式表)告诉浏览器应该如何显示一份文档的内容,也是一种节点
获取元素:
getElementById:
document.getElementById(‘purchases’);用这个就可以调用id名为purchases的元素
getElementsByTagName:
getElementsByTagName方法返回一个对象数组,每个对象数组分别对应着文档里有着给定标签的一个元素,类似于getElementById
document.getElementsByTagName(‘li’);
这个调用li的对象数组
var items=document.getElementsByTagName('li');for(var i=0;i<items.length;i++){ alert(typeof items[i]);}
getElementsByClassName: HTML5 DOM新增的方法.这个方法可以通过class属性中的类名来访问元素.
document.getElementsByClassName(“sale”);来获取那些带有多个类名的元素。
获取和设置属性:
getAttribute:
getAttribute不属于document,所以不能通过document来进行调用,只能通过元素节点对象调用.例如,可以与getElementsByTagName方法合用:
var pars=document.getElementsByTagName("p");for(var i=0;i<pars.length;i++){ alert(pars[i].getAttribute("title"));}
setAttribute:
setAttribute方法允许我们对属性节点的值作出修改。与getAttribute一样,setAttribute也只能用于元素节点对象.
object.setAttribute(attribute,value);
var shopping=document.getElementsByTagName('p');shopping.setAttribute("title","this is a good job");
注:setAttribute只能改变显示状态,却改变不了内在状态
- web前端之JavaScript DOM编程艺术之DOM
- web前端之JavaScript DOM编程艺术之CSS-DOM
- web前端之JavaScript DOM编程艺术之JavaScript语法
- web前端之JavaScript DOM编程艺术之最佳实践
- web前端之JavaScript DOM编程艺术之案例研究:JavaScript图片库
- web前端之JavaScript DOM编程艺术之用JavaScript实现基础动画效果
- web前端之JavaScript DOM编程艺术之用JavaScript实现动画效果拓展(预览图片)
- web前端之JavaScript DOM编程艺术之案例研究:图片库改进版
- web前端之JavaScript DOM编程艺术之动态创建标记
- 前端学习之《JavaScript DOM 编程艺术》读书笔记(4)
- 前端学习之《JavaScript DOM 编程艺术》读书笔记(5)
- web前端学习之路(1)Javascript DOM编程艺术总结
- javascript之Dom编程艺术一
- javascript之Dom编程艺术二
- javascript之Dom编程艺术三
- javascript之Dom编程艺术四
- javascript之Dom编程艺术五
- javascript之Dom编程艺术一
- mysql合并两个表
- linux下安装Mysql
- atitit 短信验证码的源码实现 .docx
- Android Force close是什么引起的?
- 连续型切片与离散加减的思路学习
- web前端之JavaScript DOM编程艺术之DOM
- 第十二周 项目5 -迷宫问题之图深度优先遍历加法
- Map集合
- nefuoj 7 计算整数个数
- AOP的注解方式的实现
- Zookeeper你应该了解基础知识
- 做对这道题,说明你懂block了
- Junit4-Test is not an annotation type
- CSS3媒体查询(@media)详细总结和Responsive浅谈