<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<style type ="text/css">
div {
border:1px solid #0094ff;
width:50%;
padding:50px;
}
</style>
<script src="Scripts/jquery-1.8.2.min.js"></script>
<script type ="text/javascript">
$(function () {
//1 DOM 0级事件特点
//1.1相同domu、元素的相同属性 只能注册一个方法,如果注册多个,则会被后面的覆盖
// 本质原因:onclick等0级事件,本质就是dom对象的一个属性(方法类型)如果多次赋值,则会覆盖前面的
document.getElementById("btnO").onclick = function () {
alert("我是0级事件");
};
document.getElementById("btnO").onclick = function () {
alert("111111111111");
};
//1.2 使用的是事件冒泡:由内往外
document.getElementById("divFather").onclick = function () {
alert("divFather");
};
document.getElementById("divSon").onclick = function () {
alert("divSon");
}; //2 dom2级事件特点:
//2.1 注册的方式使用不一样
//2.2 注册事件方法时 可以选择 捕获阶段事件(true),也可以选择冒泡阶段事件(false) 老式IE浏览器要加onclick
document.getElementById("btn2").attachEvent("onclick", test2); document.getElementById("btn2").detachEvent(test2);//老式IE浏览器的移除方法IE7及IE7以下 document.getElementById("btn2").addEventListener("click", function () { alert("btn2"); }, true);
document.getElementById("div1").addEventListener("click", function () { alert("div1"); }, true);
document.getElementById("div2").addEventListener("click", function () { alert("div2"); }, true); //2.3 2 级dom事件相同元素的相同事件 可以注册多个方法,而且可以动态移除指定方法
document.getElementById("btn2").addEventListener("click", test2, false);//如果要移除方法,注册方法必须要以这种方式
//移除方法
document.getElementById("btn2").removeEventListener("click",test2);
});
//JQ所有方法都是使用二级事件
function test2()
{ }
</script>
</head>
<body>
0级事件 会将 方法直接设置给dom对象对应的事件属性(如 :onclick)
<div id="divFather" >
<div id="divSon">
<input type ="button" value ="Dom0级事件" id ="btnO"/>
</div>
</div> 2级事件 不会将方法设置给dom对象的事件属性,而是使用了另外一套机制来保存事件方法
<div id="div1" >
<div id="div2">
<input type ="button" value ="Dom0级事件" id ="btn2"/>
</div>
</div> </body>
</html>

  

Dom0级事件的更多相关文章

  1. dom0级事件和dom2级事件

    dom0级事件 <a href="#" id="hash" onclick="fn();fn1();"> <button ...

  2. 测试DOM0级事件和DOM2级事件的堆叠

    1. 问题 如果大家看过北风网CJ讲师的Javascript视频教程,就可以看到其封装了一个很强的事件添加和删除函数,如下所示 function addEvent(obj, evtype, fn) { ...

  3. 【20190226】JavaScript-知识点记录:dom0级事件,dom2级事件

    DOM0级事件处理程序: 通过将元素的事件处理程序属性(如onclick)的值设置为一个函数来指定事件处理程序的方法称为DOM0级方法,它被认为是元素的方法,这时候的事件处理程序是在元素的作用域中运行 ...

  4. JavaScript事件基础-10-2.HTML事件; DOM0级事件; 掌握常用的鼠标与键盘事件 ; 掌握this的指向;

    JavaScript事件基础 学习目标 1.掌握什么是事件 2.掌握HTML事件 3.掌握DOM0级事件 4.掌握常用的鼠标与键盘事件 5.掌握this的指向 什么是事件 事件就是文档或浏览器窗口中发 ...

  5. 关于DOM事件流、DOM0级事件与DOM2级事件

    一.DOM 事件模型 DOM 事件模型包括捕获和冒泡,捕获是从上往下到达目标元素,冒泡是从当前元素,也就是目标元素往上到 window 二.流 流的概念,在现今的 JavaScript 中随处可见.比 ...

  6. DOM0级事件误区-addEventListener

    百度上很多篇文章讲解addEventListener DOM0级事件的时候讲解的都是覆盖 概念如下: 同一个元素的同一种事件只能绑定一个函数,否则后面的函数会覆盖之前的函数 其实不然,官方讲解:添加的 ...

  7. js DOM0级事件和DOM2级事件

    注册事件有两种方式,分别是DOM0级和DOM2级 DOM0级就是通过事件绑定的形式dom元素只能有(绑定)一个事件处理函数,他的特点是同一个元素绑定相同事件, 后面函数会覆盖前面的 绑定: dom.o ...

  8. DOM0级事件处理和DOM2级事件处理

    转自:http://www.cnblogs.com/holyson/p/3914406.html 0级DOM 分为2个:一是在标签内写onclick事件  二是在JS写onlicke=function ...

  9. DOM0级事件绑定之js的onclick事件

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

随机推荐

  1. js取整数、取余数的方法

    1.丢弃小数部分,保留整数部分 parseInt(5/2) 2.向上取整,有小数就整数部分加1 Math.ceil(5/2) 3,四舍五入. Math.round(5/2) 4,向下取整 Math.f ...

  2. Spring-----4、使用Spring容器

    转载自:http://blog.csdn.net/hekewangzi/article/details/41349591

  3. js Array 学习

    摘抄自<JavaScript权威指南> 1.join()返回生成的字符串.数组元素转化为字符串,拼接.默认分隔符:“,”. 2.reverse()返回逆序的数组,替换.数组中的元素倒序. ...

  4. 设计师如何为 Android 应用标注尺寸

    http://blog.cutterman.cn/?p=33 1. 画布大小定位 720 x 1280,72 dpi2. 只使用偶数单位的尺寸,比如 96 px 的列表项高度,16 px 的边距,64 ...

  5. MySQL高效获取记录总数

    通常mysql获取查询记录总数我们使用如下语句: SELECT COUNT(*) FROM users WHERE k='avs';  或:SELECT id FROM goods WHERE k=' ...

  6. 关于MySQL性能的比较

    需求:在传递一组职位编号的时候,需要统计该职位的 当天的投递情况 和 有历史记录以来总的投递量 解决方案一: 每次都进行一次数据库查询,遍历职位id,再根据职位id去查询相应时间内的投递量 /** * ...

  7. SIEM思考

    https://securosis.com/blog/comments/understanding-and-selecting-siem-log-management-introduction/ ht ...

  8. Dependency Walker使用说明

    Dependency Walker使用说明 标签: dllexewindowsvbqq工具 2010-03-29 11:10 25175人阅读 评论(22) 收藏 举报  分类: 基本常识(45)  ...

  9. Java常见序列化与反序列方法总结

    很多商业项目用到数据库.内存映射文件和普通文件来完成项目中的序列化处理的需求,但是这些方法很少会依靠于Java序列化.本文也不是用来解释序列化的,而是一起来看看面试中有关序列化的问题,这些问题你很有可 ...

  10. Winform 窗体设计器 无法识别重复成员变量声明的问题

    打开窗体设计视图出现如下错误: 查看后台代码: ColumnHeader colHead; colHead = new ColumnHeader(); colHead.Text = "Ch& ...