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的更多相关文章
随机推荐
- windows8 Metro App用Javascript来调用C#的library
(转自:http://www.ronaldwidha.net/2012/05/10/winrt-calling-c-csharp-class-libraries-from-winjs-javascri ...
- 题目1459:Prime ring problem(素数环问题——递归算法)
题目链接:http://ac.jobdu.com/problem.php?pid=1459 详解链接:https://github.com/zpfbuaa/JobduInCPlusPlus 参考代码: ...
- 不同.NET Framework版本下ASP.NET FormsAuthentication的兼容性
假设站点A加密使用.NET Framework 2.0,站点B解密使用.NET Framework 4.0,除了保持MachineKey相同外还需要进行如下设置: 1.Web.config的<a ...
- SSH使用秘钥和别名登陆服务器
手工配置免密码及别名登陆 第一步:生成秘钥 $ ssh-keygen -t rsa 第二步:上传公钥到目标服务器 $ ssh-copy-id -i ~/.ssh/id_rsa.pub <romt ...
- 检查mono兼容性的工具MOAM
mono的迁移工具,可以帮助我们从windows平台迁移到Linux平台,可以用来检测特定的.net的dll或exe程序对mono的兼容性,并能够给出不兼容的方法 项目地址 MoMA 项目介绍 MoM ...
- 【CF903G】Yet Another Maxflow Problem 线段树
[CF903G]Yet Another Maxflow Problem 题意:一张图分为两部分,左边有n个点A,右边有m个点B,所有Ai->Ai+1有边,所有Bi->Bi+1有边,某些Ai ...
- mysql如何使用索引index提升查询效率?
https://dev.mysql.com/doc/refman/8.0/en/mysql-indexes.html Indexes are used to find rows with specif ...
- Git之远程仓库
1,注册账号 登录https://github.com注册一个账号 2,上传公钥 本地CentOS使用命令 ssh-keygen -t rsa生成秘钥 复制秘钥输入到github网站 3,新建仓库 4 ...
- Anaconda中配置Pyspark的Spark开发环境
1.windows下载并安装Anaconda集成环境 URL:https://www.continuum.io/downloads 2.在控制台中测试ipython是否启动正常 3.安装JDK 3.1 ...
- Python的全局和局部变量
global1 = " def o(): #global global1; global1=2; print(global1) def p(): print(global1) if __na ...