zoukankan      html  css  js  c++  java
  • 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);

  • 相关阅读:
    Java 线程池学习
    Java线程:新特征-线程池
    创建Java线程池
    JAVA-线程安全性
    java线程安全总结
    栈和队列
    历年题目
    蓝桥杯算法训练
    hdu2083 暴力水
    poj 2299
  • 原文地址:https://www.cnblogs.com/fireporsche/p/6239477.html
Copyright © 2011-2022 走看看