Dom0级事件
<!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级事件的更多相关文章
- dom0级事件和dom2级事件
dom0级事件 <a href="#" id="hash" onclick="fn();fn1();"> <button ...
- 测试DOM0级事件和DOM2级事件的堆叠
1. 问题 如果大家看过北风网CJ讲师的Javascript视频教程,就可以看到其封装了一个很强的事件添加和删除函数,如下所示 function addEvent(obj, evtype, fn) { ...
- 【20190226】JavaScript-知识点记录:dom0级事件,dom2级事件
DOM0级事件处理程序: 通过将元素的事件处理程序属性(如onclick)的值设置为一个函数来指定事件处理程序的方法称为DOM0级方法,它被认为是元素的方法,这时候的事件处理程序是在元素的作用域中运行 ...
- JavaScript事件基础-10-2.HTML事件; DOM0级事件; 掌握常用的鼠标与键盘事件 ; 掌握this的指向;
JavaScript事件基础 学习目标 1.掌握什么是事件 2.掌握HTML事件 3.掌握DOM0级事件 4.掌握常用的鼠标与键盘事件 5.掌握this的指向 什么是事件 事件就是文档或浏览器窗口中发 ...
- 关于DOM事件流、DOM0级事件与DOM2级事件
一.DOM 事件模型 DOM 事件模型包括捕获和冒泡,捕获是从上往下到达目标元素,冒泡是从当前元素,也就是目标元素往上到 window 二.流 流的概念,在现今的 JavaScript 中随处可见.比 ...
- DOM0级事件误区-addEventListener
百度上很多篇文章讲解addEventListener DOM0级事件的时候讲解的都是覆盖 概念如下: 同一个元素的同一种事件只能绑定一个函数,否则后面的函数会覆盖之前的函数 其实不然,官方讲解:添加的 ...
- js DOM0级事件和DOM2级事件
注册事件有两种方式,分别是DOM0级和DOM2级 DOM0级就是通过事件绑定的形式dom元素只能有(绑定)一个事件处理函数,他的特点是同一个元素绑定相同事件, 后面函数会覆盖前面的 绑定: dom.o ...
- DOM0级事件处理和DOM2级事件处理
转自:http://www.cnblogs.com/holyson/p/3914406.html 0级DOM 分为2个:一是在标签内写onclick事件 二是在JS写onlicke=function ...
- DOM0级事件绑定之js的onclick事件
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
随机推荐
- MySQL5.6 windows7下安装及基本操作
图形界面安装MySQL5.6关于图形界面的安装,网上相关相关资料比较多,此处省略安装过程.安装过程中选择安装路径.所需组件及root账号密码.1.目前针对不同用户,MySQL提供了2个不同的版本:My ...
- heroku
一个可以在上面部署自己的应用一个共享平台,例如可以部署访问google的代理 地址为:https://www.heroku.com/
- winform —— 对话框和流及打印
对话框: 注意引用using System.IO; showdialog();显示对话框,返回一个dialogresult的枚举类型 colorDialog:color属性,用来获取颜色 folde ...
- 【转】SSIS 2012 – Package Configurations Menu Option Missing
原文:http://dataqueen.unlimitedviz.com/2012/01/ssis-2012-package-configurations-menu-option-missing/ I ...
- .NET Printer(打印)详细分析
如果你是一名开发人员,就不应该不知道.NET Framework.它的作用在编程人员眼中是非常强大的..NET Framework打印功能都以组件的方式提供,为程序员提供了很大的方便,但是这几个组件的 ...
- JS 之 innerHTML
定义和用法 innerHTML 属性用于设置或返回指定标签之间的 HTML 内容. 语法 Object.innerHTML = "HTML";// 设置 var html = Ob ...
- C# 调用c++报错可能性分析
1.在调用之前,可以用工具(Dependency)检测下c++库所依赖的文件,看是否有错误.如果有错误,请先下补充所需运行环境. 2.如果c++ 函数 形参需要C#传入结构体,可如下: [Struct ...
- BottomSheetBehavior 之 java.lang.IllegalArgumentException: The view is not associated with BottomSheetBehavior
AndroidRuntime: FATAL EXCEPTION: main Process: me.chunsheng.uberdriver, PID: 13674 java.lang.Runtime ...
- 《JavaScript Dom编程艺术》用例总结
页首HTML 代码如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...
- ASP.NET MVC5+ORACLE 身份认证
菜鸟来的,刚接触mvc,看到mvc5上默认带有identity身份验证的东西,公司用的oracle数据库,便想着东西能不能支持oracle数据库,折腾了半天弄出下面的东西来,有些东西可能不太准确,望大 ...