javascriptDom
来源:互联网 发布:js手机号正则表达式 编辑:程序博客网 时间:2024/05/01 01:22
1. DOM定义
全称:document object model(文档对象模型),是W3C组织推荐的处理可扩展标志语言的标准编程接口
•document:指的是可扩展的标记语言:HTML、XML;
•object:DOM实际上是以基于对象方式对当前文档进行操作的;
•model:在网页上,组织页面(或文档)的对象被组织在一个树形结构中,这个就是文档模型。
2.Document对象集合
集合
描述
all[]
提供对所有文档中html元素的访问
anchors[]
返回对文档中所有anchor对象的引用
Applets
返回对文档中所有applet对象的引用
forms[]
返回对文档中所有form对象的引用
images[]
返回对文档中所有image对象的引用
links[]
返回对文档中所有area和link对象的引用
Document对象属性
属性
描述
body
提供对<body>元素的直接访问
对于定义了框架集的文档,该属性引用了最外层的<frameset>
cookie
设置或返回与当前文档有关的所有cookie
domain
返回当前文档的域名
lastModified
返回文档被最后修改的日期和时间
referrer
返回载入当前文档的URL
title
返回当前文档的标题
URL
返回当前文档的URL
Document对象方法
方法
描述
close()
关闭用document.open()打开的输出流,并显示选定的数据
getElementById()
返回对指定id的第一个对象的引用
getElementsByName()
根据标签name属性来获取指定元素对象集合
getElementsByTagName()
根据标签名来获取指定元素对象集合
open()
打开一个流,以收集来自任何document.write()方法的输出
write()
向文档写HTML表达式或JavaScript代码
writeln()
同write(),不同的是在每个表达式之后写一个换行符
3. 对获取的标签对象基本操作
•操作属性
对象.属性名
•操作内容
对象.innerText 说明:纯文本插入,包括标签
对象.innerHTML 说明:以HTML内容插入,解析标签内容
•操作样式
对象.style.属性名
说明:如果样式属性有“-”,则去掉“-”,改为符号后面单词首字母大写方式调用样式;通过增加和删除class选择类的方式实现样式操作
4.DOM模型
(1)DOM中model部分
•文档结构理解为一个倒树模型
•文档中每一个内容都是树中的一个节点(内容包括:元素、内容、属性、注释)
(2)DOM中节点遍历
•父节点(单数):parentNode
•子节点:childNodes(复数)、firstChild(单数)、lastChild(单数)
•兄弟节点:nextSibling(上一个节点)、previousSibling(下一个节点)
(3)文档树中节点说明
•节点名称:nodeName
元素节点:标签名称;属性节点:属性名称;文本节点:#Text;
注释节点:#comment;文档节点:#document
•节点值:nodeValue
元素节点:不可用;属性节点:属性值;文本节点:文本内容;注释节点:注释内容; 文档节点:不可用
•节点类型:nodeType
元素节点:1 属性节点:2 文本节点:3
注释节点:8 文档节点:9
(4) 在文本流中节点操作(方法)
创建节点对象:document.createElement
追加子节点:对象.appendChild(插入的节点对象); 插到字节点的最后
删除子节点:对象.removeChild(删除的节点对象);
(5)文档树
js实现文件选择的添加删除
<a href="javascript:add()">添加</a>
<a href="javascript:remove()">删除</a><br />
<input type="file" /><br />
<input type="file" /><br />
<input type="file" /><br />
<script type="text/javascript">
//添加
var add = function(){
var obj = document.createElement("input");//创建一个输入框
var br = document.createElement("br");//创建一个换行
obj.type = "file";
obj.className = "file";
//获取body
var body = document.getElementsByTagName("body")[0];
body.appendChild(obj);
body.appendChild(br);
}
//删除
var remove = function(){
var inputs = document.getElementsByTagName("input");
var body = document.getElementsByTagName("body")[0];
body.removeChild(inputs[inputs.length-1]);//删除最后一个
}
</script>
测试结果
发现删除后再添加就会空出一个位置,并没有完全删除
js实现表格动态添加和删除
//添加
var add = function(){
//var tab = document.getElementById("tab1").insertRow(-1);//开头加一行
var tab = document.getElementById("tab1").insertRow(-1);//末尾加一行
var tr = document.getElementsByTagName("tr");
var num = tr.length-1;
var username = document.getElementById("username").value;
var age = document.getElementById("age").value;
var sex = document.getElementById("sex").value;
var jiguan = document.getElementById("location").value;
var td1 = tab.insertCell(0);
td1.innerHTML = num;
var td2 = tab.insertCell(1);
td2.innerHTML = username;
var td3 = tab.insertCell(2);
td3.innerHTML = age;
var td4 = tab.insertCell(3);
td4.innerHTML = sex;
var td5 = tab.insertCell(4);
td5.innerHTML = jiguan;
var td6 = tab.insertCell(5);
td6.innerHTML = "<a href='javascript:delRow(this)'>删除</a>";
}
//改变颜色
var changeColor = function(){
var trs = document.getElementsByTagName("tr");
for(var i = 1;i<trs.length;i++){
if(i%2 == 0){
trs[i].style.backgroundColor = "ghostwhite";
}else{
trs[i].style.backgroundColor = "pink";
}
}
}
- javascriptDOM
- javascriptDOM
- JavascriptDOM
- javascriptDom
- javascriptDOM加强
- JavaScriptDOM基础
- JavaScriptDOM基础
- javascriptDom操作
- javascriptDom(五)
- javascriptDOM操作
- javascriptDOM事件
- javaScriptDOM基础
- JavaScriptDOM基础
- JavaScriptDOM事件
- JavascriptDOM对象小结
- JavaScriptDOM文档对象模型
- javascriptDOM笔记(一)
- javascriptDom笔记(四)
- Druid(准)实时分析统计数据库——列存储+高效压缩
- 基于Socket的游戏服务器通信框架的设计与实现
- php版本历史
- Climbing Stairs:步长1或2到达终点
- ArcGIS Silverlight API访问天地图服
- javascriptDom
- OpenCV三维图像的创建和数据遍历
- 【第1108期】小白谈数据脱敏
- 利用XE7的OmniXML完成XML文件的处理,支持跨平台
- Linux学习笔记-Vim常用命令
- Angular使用taobao镜像以加快下载速度
- 技术要扎扎实实的做,业余功夫也要修炼
- vmware 运行虚拟机显示 内部错误
- 安卓自定义Dialog(四)