一、JavaScript点击事件绑定方法

1.1 HTML onclick事件属性

 <button onclick="clickMe(this)">click me</button>
 function clickMe(this) {
alert("click me");
}

1.2 JavaScript onclick事件

 <button id="button">click me</button>
 document.getElementById("button").onclick=clickMe;

1.3 IE4+<script for>

 <button id="button1">click me</button>
 <script for="button1" event="onclick">
alert("click me");
</script>

1.4 IE5/windows attachEvent()方法

 <button id="button2">click me</button>
 document.getElementById("button2").attachEvent("onclick",clickMe);

1.5 W3C DOM addEventListener()方法

 <button id="button3">click me</button>
 document.getElementById("button3").addEventListener("click",clickMe);

二、jQuery点击事件绑定方法

2.1 click事件绑定

2.1.1 将函数绑定到click事件

语法:

$(selector).click(function)

实例:

 <button id="button2_1">click me</button>
 $("#button2_1").click(function(e){
alert(e);
});
2.1.2 触发click事件

语法:

 $(selector).click()

2.2 dblclick()方法

语法:

$(selector).dblclick(function)

实例:

 <button id="button2_7">click me</button>
 $("#button2_7").dblclick(function(e) {
alert(e);
});

2.3 bind()方法 unbind()方法

2.3.1 bind()方法 将事件和函数绑定到元素(可添加一个或多个事件,可传递额外数据到函数)

语法(添加一个事件):

$(selector).bind(event,data,function)

语法(添加多个事件):

$(selector).bind({event:function, event:function, ...})

实例:

 <button id="button2_2">click me</button>
 $("#button2_2").bind("click", function(e) {
alert(e);
});
2.3.2 unbind()方法 取消绑定元素的事件处理程序和函数(可添加一个或多个事件,可传递额外数据到函数)

语法(取消绑定一个事件):

$(selector).unbind(event,function)

语法(取消绑定多个事件):

$(selector).unbind(eventObj)

实例:

1 $("#button2_2").unbind();

2.4 live()方法 die()方法

2.4.1 live()方法 为被选元素附加一个或多个事件处理程序

语法:

$(selector).live(event,data,function)

实例:

 <button id="button2_3">click me</button>
 $("#button2_3").live("click", function(e) {
alert(e);
});
2.4.2 die()方法 移除所有通过 live() 方法向指定元素添加的一个或多个事件处理程序

语法:

$(selector).die(event,function)

实例:

1 $("#button2_3").die();

2.5 delegate()方法 undelegate()方法

2.5.1 delegate()方法 为指定的元素(属于被选元素的子元素)添加一个或多个事件处理程序

语法:

$(selector).delegate(childSelector,event,data,function)

实例:

 <button id="button2_4">click me</button>
 $("body").delegate("#button2_4", "click", function(e) {
alert(e);
});
2.5.2 undelegate()方法 为指定的元素(属于被选元素的子元素)添加一个或多个事件处理程序

语法:

$(selector).undelegate(selector,event,function)

实例:

1 $("#button2_4").undelegate();

2.6 on()方法 off()方法

2.6.1 on()方法 在被选元素及子元素上添加一个或多个事件处理程序

语法:

$(selector).on(event,childSelector,data,function,map)

实例:

 <button id="button2_5">click me</button>
 $("#button2_5").on("click", function(e) {
alert(e);
});
2.6.2 off()方法 通常用于移除通过 on() 方法添加的事件处理程序

语法:

$(selector).off(event,selector,function(eventObj),map)

实例:

1 $("#button2_5").off("click");

2.7 one()方法 每个元素只能运行一次事件处理器函数

2.7.1 one()方法 为被选元素附加一个或多个事件处理程序,并规定当事件发生时运行的函数

语法:

$(selector).one(event,data,function)

实例:

 <button id="button2_6">click me</button>
 $("#button2_6").one("click", function(e) {
alert(e);
});

三、jQuery点击事件绑定方法比较

jQuery点击事件方法

适用jQuery版本 是否支持未来新添加元素的事件设置

click

适用所有版本

dblclick

适用所有版本

bind

适用所有版本,但是根据官网解释,自从jquery1.7版本以后bind()函数推荐用on()来代替。
live
jquery1.9版本以下支持,jquery1.9及其以上版本删除了此方法,jquery1.9以上版本用on()方法来代替。

delegate

jquery1.4.2及其以上版本。

on

jquery1.7及其以上版本;jquery1.7版本出现之后用于替代bind(),live()绑定事件方式。
one

适用jQuery1.0-jQuery3.1版本

 

js、jq事件绑定方式总结——以click事件为例的更多相关文章

  1. 移动端和pc端事件绑定方式以及取消浏览器默认样式和取消冒泡

    ### 两种绑定方式 (DOM0)1.obj.onclick = fn; (DOM2)2. ie:obj.attachEvent(事件名称,事件函数); 1.没有捕获(非标准的ie 标准的ie底下有 ...

  2. jq常用事件(on,blur,focus,change),js/jq等待图片(页面)加载完毕事件,js读取文件

    jq常用事件(on,blur,focus,change) // 方法一(推荐) $('.box').on( "click",function() {} ) $('.box').on ...

  3. 巨蟒python全栈开发数据库前端6:事件onclick的两种绑定方式&&onblur和onfocus事件&&window.onload解释&&小米商城讲解

    1.回顾上节内容(JavaScript) 一.JavaScript概述 1.ECMAScript和JavaScript的关系 2.ECMAScript的历史 3.JavaScript是一门前后端都可以 ...

  4. jquery事件绑定方式总结(补充)

    总结 : 1.简单事件绑定方式:事件名()  如:click() 2.高级事件绑定方式:bind(事件名,数据参数,function)    3.动态生成元素事件绑定方式:live(事件名,数据参数, ...

  5. js jq输入框中按回车触发提交事件,用户在页面输入后按回车(Enter键)进行

    js jq输入框中按回车触发提交事件,用户在页面输入后按回车(Enter键)进行 代码如下: <!DOCTYPE html> <html lang="en" xm ...

  6. atitit.guice3 绑定方式打总结生成非单例对象toInstance toProvider区别 v2 pb29

    atitit.guice3 绑定方式打总结生成非单例对象toInstance toProvider区别 v2 pb29 1. 三 绑定方式的介绍1 2. To接口,链式绑定,用的最多的1 3. toC ...

  7. jq和js中click 事件的几种方式总结和click事件的累加问题解决办法

     1:常见的三种绑定click事件: 第一种:$("#click").click(function(){ alert("Hello World  click") ...

  8. javaScript事件机制深入学习(事件冒泡,事件捕获,事件绑定方式,移除事件方式,阻止浏览器默认行为,事件委托,模拟浏览器事件,自定义事件)

    前言 JavaScript与HTML之间的交互是通过事件实现的.事件,就是文档或浏览器窗口中发生的一些特定的交互瞬间.可以使用侦听器(或处理程序)来预订事件,以便事件发生时执行相应的代码.这种在传统软 ...

  9. jQuery事件绑定方式(转)

    bind() 简要描述 bind()向匹配元素添加一个或多个事件处理器. 使用方式 $(selector).bind(event,data,function) event:必需项:添加到元素的一个或多 ...

随机推荐

  1. Python list 两个不等长列表交叉合并

    遇到一个需求,需要对两个长度不一定相等的列表进行交叉合并.像拉拉链一样(两边的拉链不一定相等). 如: a = [1, 3, 5] b = [2, 4, 6, 8] 需将a, b 合并为 c c = ...

  2. 【基础】CSS实现多重边框的5种方式

    简言 目前最优雅地实现多重边框的方案是利用CSS3 的 box-shadow属性,但如果要兼容老的浏览器,则需要选择其它的方案.本文简要地列举了几种多重边框的实现方案,大家可以根据项目实际及兼容性要求 ...

  3. sublime使用技巧之集成VI

    熟悉开发工具,减少多余的操作流程有助于提高开发效率,而Sublime Text 2是sublime产品的经典版本,因此本文基于Sublime Text 2讲解sublime的使用技巧. VI的主要作用 ...

  4. docker的安装和技巧

    工作了有一段时间,开发环境中需要docker环境,但是docker一直不算很熟,之前一直是利用yum安装,但是yum安装真的很费劲,所以总结了一些经验给大家: 1,利用yum直接安装 官网是直接给了y ...

  5. .net c#获取自定义Attribute

    前言: 在c#开发中,有时候我们需要读取 Attribute中的信息(关于Attribute , 我自己把他理解成一个可以为类,属性标记的东西,这个标记可以为你提供一些关于类,方法,属性的额外信息) ...

  6. Future与Promise

    https://code.csdn.NET/DOC_Scala/chinese_scala_offical_document/file/Futures-and-Promises-cn.md#ancho ...

  7. 走进netty

    三月份开始看公司RPC框架的源码,发现如果要折腾明白,网络通讯这块知识必不可少.于是从如下几点开始逐步研究. 一.基础知识篇 1.Unix下5种I/O模型 Linux的内核将所有外部设备都看作一个文件 ...

  8. 微信公众号网页授权登录--JAVA

    网上搜资料时,网友都说官方文档太垃圾了不易看懂,如何如何的.现在个人整理了一个通俗易懂易上手的,希望可以帮助到刚接触微信接口的你. 请看流程图!看懂图,就懂了一半了: 其实整体流程大体只需三步:用户点 ...

  9. 神奇的namespace使用

    一大波概念正在来袭: 作用域与命名空间 相关概念 与命名空间相关的概念有:        声明域(declaration region)—— 声明标识符的区域.如在函数外面声明的全局变量,它的声明域为 ...

  10. 使用Navicat for MySQL把本地数据库上传到服务器

    服务器系统基本都是基于linux的,这个数据库上传的方式适用于linux的各种版本,比如Ubuntu和Centos(尽管这两个版本各种大坑小坑,但至少在数据库传输上保持了一致性) 当然本地数据库上传到 ...