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的更多相关文章

随机推荐

  1. jQuery事件处理(七)

    1.自定义事件(用户手动trigger的一般都是自定义事件) trigger: function( event, data, elem, onlyHandlers ) { var i, cur, tm ...

  2. junit4 详解

    转:http://www.cnblogs.com/eggbucket/archive/2012/02/02/2335697.html JUnit4概述 JUnit4是JUnit框架有史以来的最大改进, ...

  3. Sencha Cmd 5.0.1.231 是坑爹货

    Sencha Cmd 5.0.1.231相比之前的版本有了很大的变动,存在很多坑爹之处,个人建议不要升级到这个版本,如果已经升级了的就卸载了还原到以前的版本吧. 历史版本下载地址:http://cdn ...

  4. [原]git的使用(二)---工作区和暂存区

    接着上篇 git的使用(一) http://www.cnblogs.com/horizonli/p/5323363.html 6.工作区和暂存区(中转站) 工作区(Working Directory) ...

  5. jquery中event对象属性与方法小结

    JQuery事件中的Event属性是经常性的被忽略的.大多数时间你的确不怎么用它,但有些时候它还是它还是有作用的.如获知触发时用户的环境(是否按了shift etc).每个浏览器对event都有不同的 ...

  6. vue生成路由实例

    一.vue路由https://router.vuejs.org/zh-cn/1.bower下载vue-routervue的里的链接 <router-link to="/home&quo ...

  7. Visual Studio 2015打开ASP.NET MVC的View提示"Object reference not set to an instance of an object"错误的解决方案

    使用Visual Studio 2013打开没有问题,但Visual Studio 2015打开cshtml就会提示"Object reference not set to an insta ...

  8. 23种设计模式之适配器模式(Adapter)

    适配器模式将一个接口转换成客户希望的另一个接口,从而使接口不兼容的那些类可以一起工作.适配器模式既可以作为类结构型模式,也可以作为对象结构型模式.在类适配器模式中,通过使用一个具体类将适配者适配到目标 ...

  9. 关于kvm虚拟机的克隆方法总结

    kvm虚拟机的克隆分为两种情况,第一种kvm宿主机上对虚拟机直接克隆 第二种通过复制配置文件与磁盘文件的虚拟机复制克隆(适用于异机的静态迁移). 现笔者将分别两种kvm虚拟机克隆的的详细操作过程都记录 ...

  10. python 读取一个目录下的所有目录和文件

    #!/usr/bin/python # -*- coding:utf8 -*- import os allFileNum = 0 def printPath(level, path): global ...