html07
1.复习
js的外部对象,DOM,BOM
BOM
window
-location -Location对象 : href reload()
-history -History :back() forward() go(index)
-screen -width availWidth
-navigator -userAgent
-document
DOM
1)查找节点
byID 返回单个节点 没找到 -null
ByTagname 返回集合 -[]
byName 集合
子节点:parentNode -父节点
父节点:childNodes -子节点
querySelector(选择器) - 单个节点
querySelectorAll - 多个节点
单个没找到,返回null,多个没找到返回空数组[]
2)读取+修改
读内容,读值
ele.innerText : 获取双标记中的文本
ele.innerHTML : 获取双标记中的html
该内容
ele.innerText=值 :
ele.innerHTML=值 :
读属性
ele.属性名(注意是否支持)
ele.getAttribute(属性名)
改属性
ele.属性名=值
ele.setAttribute(属性名,值);
================================================
1.综合练习:表单的验证
2.DOM操作
1)增加节点
* 通过属性给页面添加节点
ele.innerHTML="HTML代码"
* 通过方法给页面添加节点
a,新建节点
document.createElement(节点名称);
如:var divEle=document.createElement("div");
divEle.innerHTML=值;
b,添加新节点到指定位置
父节点.appendChild(新节点);
如:父节点.appendChild(divEle);
父节点.insertBefore(新节点,旧节点);//插入的新节点时在父节点的旧节点的前面
**
通过js添加的元素,可以被js找到
但是要注意先后顺序(先添加,再查找)
**
2)删除节点
父节点.removeChild(删除的节点);
//练习:省市,二级联动
3.事件
1)事件是指页面的元素状态方法改变,所触发的动作
鼠标事件
单机事件:onclick
双击事件:ondblclick
鼠标移入:onmouseover
鼠标移开:onmouseout
键盘事件
键盘按下: onkeydown
键盘松开: onkeyup
状态事件 (状态改变)
选择: onchange (单选 复选 下拉列表)
失去焦点: onblur
获取焦点: onfocus
表单提交: onsubmit
2)事件的定义
* 元素上添加对应的事件属性
如: <input onblur="函数">
* 在js中
元素.时间名=function(){}
元素.事件名=函数名
function 函数名(){}
3)event
任何事件触发之后都会产生1个event对象
event记录事件发生时鼠标位置 按键的状态
触发对象等信息
事件冒泡:若子节点和父节点有相同的事件,若子节点触发事件时,会向上触发父节点的同名事件
取消事件冒泡:event.cancelBubble=true;
========================================
js中的自定义对象
{}:对象 多个属性用逗号隔开
形式1
var user={
"name":"zs",
"age":34,
"sayHello":function (){
var info="我是"+this.age+"岁的"+this.name;
alert(info);
}
};
user.sayHello();
形式2:
//类似于构造函数
function UserModel(){
this.name="";
this.age=0;
}
//创建对象
var lisi=new UserModel();
lisi.name="lisa";
lisi.age=54;
console.log(lisi);
html07的更多相关文章
随机推荐
- MyBatis学习之多表查询
一对多需求:即一张表class中又含有多张表(teacher,student)内容.现根据class_id 来获取对应的班级信息(包括学生和老师信息) 方式一:嵌套结果 使用嵌套结果映射来处理重复的联 ...
- Elasticsearch学习之深入搜索三 --- best fields策略
1. 为帖子数据增加content字段 POST /forum/article/_bulk { "} } { "doc" : {"content" : ...
- JavaScript 闭包(Closure)
闭包(closure)是掌握Javascript从人门到深入一个非常重要的门槛,它是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现. 闭包-无处不在 在前端编程中,使 ...
- linux 终端输出颜色
在Linux终端下调试程序时,有时需要输出大量信息.若能控制字体的颜色和显示方式,可使输出信息对比鲜明,便于调试时观察数据. 终端的字符颜色由转义序列(Escape Sequence)控制,是文本模式 ...
- Autojump:一个可以在 Linux 文件系统快速导航的高级 cd 命令
相关博客:https://linux.cn/article-3401-1.html 对于那些主要通过控制台或终端使用 Linux 命令行来工作的 Linux 用户来说,他们真切地感受到了 Linux ...
- [Apio2008]免费道路[Kruscal]
3624: [Apio2008]免费道路 Time Limit: 2 Sec Memory Limit: 128 MBSec Special JudgeSubmit: 1292 Solved: ...
- Eui中eui.Image的source和texture属性赋值导致的获取高宽为0问题
引擎5.2.5版本 一个eui.Image,给source和texture赋值,获取高宽会不同 = = ! let img:eui.Image = new eui.Image(); img.sourc ...
- 基于Spring-Boot框架的Elasticsearch搜索服务器配置
一.相关包maven配置 <!-- https://mvnrepository.com/artifact/org.springframework.data/spring-data-elastic ...
- [ZT] 医学图像分析相关的会议
原文地址:http://blog.sina.com.cn/s/blog_ad7c19000102v42d.html 一. 图形学.可视化领域的会议: (一)高级别会议 1. Siggraph (图形 ...
- 专访|HPE软件部中国区总经理李时:HPE引领IT战略新形态
2016年7月22日,「HPE&msup软件技术开放日」将在上海举办,msup携手HPE揭秘全球测试中心背后的12条技术实践. 李时:HPE软件部中国区总经理,将在本次开放日带来<HP ...