Rumah  >  Artikel  >  pembangunan bahagian belakang  >  js事件监听实例详解

js事件监听实例详解

小云云
小云云asal
2018-03-10 14:44:341959semak imbas

事件监听的定义

在Javascript中,浏览器一般分为两大类:

① 基于IE内核的浏览器(版本号小于9的IE浏览器)

② 基于W3C内核的浏览器(版本号大于9的IE浏览器、Firefox、Google等浏览器)

1)基本语法:基于IE内核浏览器

dom对象.attachEvent(type,callback,capture) :为元素绑定事件监听程序

参数说明:

type:绑定的事件类型,如onclick、onmouseover、onmouseout

callback:事件的处理程序,通常是一个匿名函数

capture:使用的浏览器模型,冒泡模型与捕获模型,默认IE8以下的浏览器只支持冒泡模型!

?

1

2

3

4

5

6

7

8

9

10

11

12


//封装$函数,用于获取id的元素
function $(id){
    return document.getElementById(id)     
}
//绑定事件监听
$('btn').attachEvent('onclick',function(){
    alert('hello')
});
//二次绑定
$('btn').attachEvent('onclick',function(){
    alert('world')
});


2、


基本语法:基于W3C内核的事件监听

dom对象.addEventListener(type,callback) :为W3C内核浏览器绑定事件监听

参数说明:

type:绑定事件类型,不带’on’前缀,如click,mouseover,mouseout

callback:事件的处理程序,通常是一个匿名函数

1

2

3

4

5

6

7

8

9

10

11

12


//封装$函数,用于获取id的元素
function $(id){
    return document.getElementById(id)     
}
//绑定事件监听
$('btn').addEventListener('onclick',function(){
    alert('hello')
});
//二次绑定
$('btn').addEventListener('onclick',function(){
    alert('world')
});



总结事件监听的区别

IE内核的监听方式与W3C内核的监听方式:

①方式不同

IE内核的浏览器使用attachEvent进行绑定

W3C内核的浏览器使用addEventListener进行绑定

②参数不同

IE内核浏览器,其绑定方式一共有三个参数type,callback,capture(使用的浏览器模型)

W3C内核浏览器,其绑定方式一共有二个参数,type和callback

③type参数不同

IE内核的浏览器,type是需要添加’on’前缀的,如onclick

W3C内核浏览器,type是不需要添加’on’前缀的,如click

④触发顺序不同

IE内核的浏览器,其事件监听是先绑定后触发,后绑定的先触发

W3C内核的浏览器,其事件监听是先绑定先触发,后绑定的后触发

相关推荐:

Node.js中的事件监听和事件发布用法实例详解

JS组合按键事件监听插件的详细介绍

jQuery-mobile事件监听与用法详解

Atas ialah kandungan terperinci js事件监听实例详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:JSON和XML知识点归纳总结Artikel seterusnya:前端框架Heng.js详解