jquery on绑定事件
描述:给一个或多个元素(当前的或未来的)的一个或多个事件绑定一个事件处理函数。(1.7版本开始支持,是 bind()、live() 和 delegate() 方法的新的替代品)
语法:.on( events [, childSelector] [, data ], handler )
参数说明:
1.events - 事件(必须):String
2.childSelector- 子元素选择器(可选):String
选择选择器子元素的选择器。如果这个子元素选择器是null或者省略了,那么事件总是被选择器触发。(多用于动态生成的元素)
3.data - 数据(可选):Anything
事件被触发时要传递给事件处理函数的数据。
4.handler - 事件处理函数(必须):Function( Event eventObject [, Anything extraParameter ] [, ... ] )
* 要传参数,第一个参数必须是event(事件)。
简单例子:
$(document).on('click', function() { // 给整个文档添加点击事件,给点击事件绑定一个事件处理函数(弹出1)
alert(1);
})
这里的click是事件(events),function是事件处理函数(handler)
click是点击事件,还支持其他事件,下面是完整列表:
blur 失去焦点事件
focus 获得焦点事件
focusin 获得焦点事件
focusout 失去焦点事件(和blur有所区别)
load 加载事件
resize 改变大小事件
scroll 滚动事件
unload 重新加载事件
click 单击事件
dblclick 双击事件
mousedown 鼠标滑轮向下滚动事件
mouseup 鼠标滑轮向上滚动事件
mousemove 鼠标移动事件
mouseover 鼠标经过/移入事件
mouseout 鼠标移出事件
mouseenter 鼠标移入事件
mouseleave 鼠标移开事件
change 值改变事件
select 选择事件
submit 提交事件
keydow 键盘按下事件
keypress 键盘按键按下事件
keyup 键盘按键弹起事件
error 错误事件
contextmenu 右键菜单事件
复杂例子1(给动态生成的元素绑定事件):
<div class="container"></div>
var $div = $('<div class="content"></div>'); // 创建一个class为"content"的div
$('.container').append($div); // 将创建的div添加到class为"container"的div中
$('.container').on('click', '.content', function() { // 将事件绑定到动态生成的div上
alert(1);
});
这里看起来是将事件触发函数绑定到选择器$('.container')的点击事件上,事实上是绑定到选择器的子元素.content的点击事件上。
复杂例子2(触发事件时传递参数):
<button>点我啊快点我</button>
$('button').on('click', function(event, arg1, arg2) {
alert('参数1: ', arg1, '参数2:', arg2);
}).trigger('click', ['我是参数1', '我是参数2']);
这里先给元素绑定事件,并定义好传参,随后直接触发并传递实参。注意的是形参的第一个必须是event,即从第二个形参开始才是实际要传递给处理函数的自定义参数。
复杂例子3(阻止冒泡):
<div class="out">
<div class="in"><div>
</div>
$('.in').on('click', function(e) {
alert(1);
e.stopPropagation();
});
这里如果不阻止向上冒泡,会alert两次,原因是in元素是在out元素里面的,in绑定的事件会冒泡到out上。
"我不会再为你难过了。"
jquery on绑定事件的更多相关文章
- jquery on 绑定事件
jquery on 绑定事件 1. 多个选择器绑定一个事件 2. 多个事件绑定一个函数 3. 一个选择器绑定多个事件,有两种写法: 或者 on只绑定一次事件,绑定父元素,防止初始化时数据未加载,绑定出 ...
- jQuery中绑定事件bind() on() live() one()的异同
jQuery中绑定事件的四种方法,他们可以同时绑定一个或多个事件 bind()-------------------------版本号小于3.0(在Jquery3.0中已经移除,相应unbind()也 ...
- jQuery中绑定事件的几种方法
以click事件为例,jQuery中绑定事件有三种方法: (1)target.click(function(){}); (2)target.bind("click",functi ...
- JQuery中绑定事件(bind())和移除事件(unbind())
有时候事件执行完了,想取消事件的效果可以通过一定的办法来处理.比如bind()(绑定事件)和unbind()(移除通过bind()方法添加的事件)方法来移除事件的效果. 比如下面的一个案例: 复制代码 ...
- jquery on绑定事件叠加解决方法
jquery on绑定事件叠加解决方法 代码如下 <pre> $('.maoqiu').each(function () { var is_bind = $(this).attr('is_ ...
- jQuery .on() 绑定事件无效
前几天,要在移动端实现一系列的功能,用 HTML + JS. 按照以往的思路,事件绑定就直接 $(document).on "click", "selector" ...
- jquery 获取绑定事件
在1.8.0版本之前,我们要想获取某个DOM绑定的事件处理程序可以这样: 1 $.data(domObj,'events');//或者$('selector').data('events') 而从1. ...
- Jquery 欲绑定事件
有时候,想提前给即将添加的的元素绑定事件,这时候使用on就不行了,利用事件的冒泡机制可以完成这个功能 Jquery 提供了delegate方法就是这样实现的. $("#schemaaccor ...
- 用jQuery来绑定事件的3种方法和区别
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Jquery中绑定事件的异同
谈论jquery中bind(),live(),delegate(),on()绑定事件方式 1. Bind() $(selector).bind(event,data,function) Event:必 ...
随机推荐
- C++ 中operator用法:隐式类型转换
[转]C++ operator两种用法 C++,有时它的确是个耐玩的东东,就比如operator,它有两种用法,一种是operator overloading(操作符重载),一种是operator c ...
- 自定义Chrome浏览器
一.全局 自用备份,窗体透明化.要添加对应网站的窗体class到对应的位置 /*主页背景*/ /*https://images.cnblogs.com/cnblogs_com/AardWolf/135 ...
- Spring事务管理2--声明式
简述 1.Spring 的声明式事务管理在底层是建立在 AOP 的基础上.其本质是在方法前后进行拦截,然后在目标方法开始之前创建一个事务,在执行这目标方法结束后,根据执行情况提交或进行回滚事务. 2. ...
- Windows 7 X64 SQL Server 2000 企业管理器无法建立新表
问题现象: 当建立新表时会出现一个空白的窗口,敲击键盘输入后就会出现应用出错,然后退出. 解决方案: 选中某个已经存在的表,再点右键,新建表就可以正常操作了.
- 11.scrapy框架持久化存储
今日概要 基于终端指令的持久化存储 基于管道的持久化存储 今日详情 1.基于终端指令的持久化存储 保证爬虫文件的parse方法中有可迭代类型对象(通常为列表or字典)的返回,该返回值可以通过终端指令的 ...
- 【Teradata】日期类型转换
1.字符串与日期间转换 date '2007-05-10' cast( (curent_timestamp() (format )) //结果为20180615164201 2.毫秒转换为时间戳 / ...
- spark on yarn 集群部署
概述 hadoop2.7.1 spark 1.5.1 192.168.31.62 resourcemanager, namenode, master 192.168.31.63 nodeman ...
- C#、Java中的一些小知识点总结(持续更新......)
前言:在项目中,有时候一些小的知识,总是容易让人忽略,但是这些功能加在项目中往往十分的有用,因此笔者在这里总结项目中遇到的一些实用的小知识点,以备用,并持续更新...... 1.禁用DataGridV ...
- byteBuffer的用法
byteBuffer 的三个属性 position limit capacity buffer的一般使用过程 // 1.分配空间// 2.写入数据到Buffer// 3.调用filp()方法// 4. ...
- ElasticSearch(站内搜索) 转发 https://www.cnblogs.com/xibei666/p/5929970.html
简介 Elasticsearch是一个实时的分布式搜索和分析引擎.它可以帮助你用前所未有的速度去处理大规模数据.它可以用于全文搜索,结构化搜索以及分析,当然你也可以将这三者进行组合.Elasticse ...