javascrpt事件
1、HTML事件处理程序:就是事件直接写在HTML文档中,其特点就是HTML和Js紧密的结合在一起,缺点就是修改不方便,需要改动js和HTML两处。比如:
<button onclick="event"></button>
<javascript>
funciton event(){
alert("hello world");
</javascript>
2、DOM0级处理程序:就是将事件作为对象的属性来看待,其更方便了修改,缺点就是如果添加在同一个对象上添加多个事件的话,后面的会覆盖掉之前的。比如:
var a = document.getElementById("div");
a.onclick = function(){...}
3、DOM2级事件处理程序:其指定了两个方法,addEventListener,removeEventListener;这两个函数接受三个参数,分别是type,handler,true/false;其中type表示的是给对象添加的事件类型,handler表示的是函数,true表示的是事件捕获,false表示的是时间冒泡。
var btn3 = document.getElementById("btn");
function event(){}
var eventUtil = {
//添加句柄
addHandler:function(element,type,handler){//element表示的是哪个元素,type表示的是事件类型(click,mouseover),handler表示的是处理的函数
if(element.addEventListener)//DOM2级处理函数
element.addEventListener(type,handler,false);
else if(element.attachEvent)//IE事件处理程序
element.attachEvent("on"+type,handler);//这里要变成onclick,所以要加on
else
element["on"+type] = handler;//一般事件处理函数
},
//删除句柄
removeHandler:function(element,type,handler){
if(element.removeEventListener)
element.removeEventListener(type,handler,false);
else if(element.detachEvent)
element.detachEvent("on"+type,handler);
else
element["on"+type] = handler;
}
},
eventUtil.addHandler(btn3,"click",event);
eventUtil.removeHandler(btn3,"click",event);
javascrpt事件的更多相关文章
- JNI详解---从不懂到理解
转载:https://blog.csdn.net/hui12581/article/details/44832651 Chap1:JNI完全手册... 3 Chap2:JNI-百度百科... 11 C ...
- 各浏览器对 onbeforeunload 事件的支持与触发条件实现有差异
转载:http://www.w3help.org/zh-cn/causes/BX2047 标准参考 无. 问题描述 一般情况下,onbeforeunload 事件处理函数内会写入一些提示性语句,当用户 ...
- 解决IE6下a标签的onclick事件里的超链接不跳转问题
今天遇到个很诡异的问题,就是<a href="javascript:void(0);" onclick="window.location=url"> ...
- jQuery学习笔记(事件)
1. 加载DOM jQuery用$(document).ready()方法来代替传统JavaScrpt的window.onload方法.但它们执行时机有所不同,window.onload在网页所有元素 ...
- Jquery的点击事件,三句代码完成全选事件
先来看一下Js和Jquery的点击事件 举两个简单的例子 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&q ...
- 关于 Chrome 浏览器中 onresize 事件的 Bug
我在写插件时用到了 onresize 事件,在反复地测试后发现该事件在 Chrome 及 Opera(内核基本与 Chrome 相同,以下统称 Chrome)浏览器打开时就会执行,这种情况也许不能算作 ...
- MVVM设计模式和WPF中的实现(四)事件绑定
MVVM设计模式和在WPF中的实现(四) 事件绑定 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在WPF中 ...
- C++中的事件分发
本文意在展现一个C++实现的通用事件分发系统,能够灵活的处理各种事件.对于事件处理函数的注册,希望既能注册到普通函数,注册到事件处理类,也能注册到任意类的成员函数.这样在游戏客户端的逻辑处理中,可以非 ...
- 移动端IOS点击事件失效解决方案
解决方案 解决办法有 4 种可供选择: 1 将 click 事件直接绑定到目标元素(即 .target)上 2 将目标元素换成 <a> 或者 button 等可点击的元素 3 将 clic ...
随机推荐
- Linux下make与makefile
make 用来解析 makefile 文件 make 的选项:-d 显示调试信息-f 文件 默认是从 makefile 或 Makefile 中读取依赖信息,用该选项可更改文件-h 显示所有 ...
- 就最近学习MVC4.0的页面用法学到的东西
最近进了一家新公司,学习的东西还是蛮多的,首先了解的是@using(new Ajax.beginForm("",null,new AjaxOptions() { OnSuccess ...
- 动态SQL字符长度超过8000
动态SQL字符长度超过8000,我记得SQL SERVER 2008中用SP_EXECUTESQL打破了这个限制. 平常用动态SQL,可能都会用EXEC(),但是有限制,就是8000字符串长度.自从S ...
- IBM WebSphere MQ的oracle的jdbc
一.IBM WebSphere MQ7.0的jdbc支持数据库有: DB2 Informix Informix_With_Date_Format Microsoft_SQL_Server Oracle ...
- 鸟哥的linux私房菜学习记录之软件安装原始码与Tarball
- mybatis研究:select性能对比
package sss.mybatis_1; import java.io.InputStream; import java.security.Principal; import java.util. ...
- T-sql 查询
------------------case---when-------的使用--------------------- select userAccount , eatingDate , c ...
- openlayers 3 简书
1. 简书http://www.jianshu.com/p/6785e755fa0d 2. 文档 http://anzhihun.coding.me/ol3-primer/ch03/03-02.htm ...
- MarkDown简要语法
1.标题 2.列表 3. 引用 4.图片与连接 实现链接有两种方式,分别是内联方式和引用方式 内联方式 [This baidu link](http://www.baidu.com)效果如:This ...
- 【转】Source Insight的Alt + W键不能使用的解决办法
转载地址:http://velep.com/archives/607.html 对于Source Insight 3.5,习惯于使用Alt + W组合键并配合数字键来切换文件窗口,带来无比的便利.但是 ...