这一章着重讲了DOM,同时学习了javascript中的数个方法。事例将会在之后公布
*DOM 文档对象模型(Document Object Model)
#Document Object Model#文档:标记型文档 (HTML/XML)
#对象;封装属性和行为(方法)
#模型:共性特征的体现
#DOM解析HTML
#通过DOM的方法,把HTML全部(元素())都封装成了对象。
<span id="spanId">文本</span>
#DOM想要操作标记型文档县解析。(解析器)
#DOM解析HTML(浏览器就可以解析HTML)
#浏览器BOM怎么解析HTML的
*DOM的三个级别
*DHTML不是一门编程语言
#html :封装数据,<span>展示给用户的数据</span>
#CSS :设置样式(显示效果)
#DOM :操作HTML(解析html)
#JS :提供逻辑(判断语句,循环语句)
#Document:代表整个文档
*方法:
document.getElementById("");通过元素的ID的属性获取元素对象
getElementByName();通过名称获取元素对象的集合(返回数组)
getElementsByTagName("标签名称");通过变迁名称获取元素对象的集合(返回数组)
#write(“文本对象内容,可以为html标签)
#Element:元素(标签)对象
#Attribute:属性的对象
#text:文本对象
#Node:节点对象
#GetAttribute("属性名称"); //获取属性值
var input =document.getElementByid("nameId");
/*
#获取元素对象
#getAttribute("属性名称"); 获取属性的值
#setAttribute("属性名称",属性的值");//设置和修改属性的值
#removeAttribute
#获取元素下的所有子节点
*/
var input =document.getElementById("nameId");
//分割,拿取ul下面的子节点
var uid=document.getElementById("uid");
//获取uid下面的子节点
var lis =uid.childNodes;
//弹出alert框
//alert(lis.length);//由于是document所以空格也倍计算
//ul开头
var lis2=uid.getElementsByTagName("li");
alert(lis2.length);
*Node;节点对象
#nodeName 节点名称
#nodeType 节点类型 元素=1 属性=2 text=3
#nodeValue 节点的值
#方法
*hasChildNodes() 返回是否包含子节点,布尔类型
*hasAttributes()是否包含属性
// 小时代替换上海
document.getElementById("sh").onclick =function(){
var sh =document.getElementById("sh");
var xsd2 =document.getElementById("xsd2");
var ulc=sh.parentNode;
ul.replaceChile(xsd2,sh);
}
##innerHTML //获取和设置文本内容
事件:
onclick 点击时间
onload 加载事件
onfocus 获取焦点
onblur 失去焦点
#全选/全部选/反选的练习
#js省市级联动:
* 思路:通过传过来的值,和数组对比,如果匹配成功,获取数组中后面的值(1开始),添加select2中。
* 事件:改变事件
* onchange
* 通过改变事件把值传过来
* 区数组中获取值(获取里面的数组0位置的元素),和传过来的值做对比,如果匹配,获取该数组中后面的值。
* 添加到select2中。
*run(val)至程序体run(this.value)
时间总结:
onfocus()聚焦时间
onblur()脱胶事件
鼠标移动事件:
onmousemove
onmouseout
onmouseover
鼠标点击时间
onclick 单机
ondbclick 双击
加载,卸载
onload
onunload
键盘:onkeyup
改变时间:onchange