JavaScript加强之自定义event事件


Posted in Javascript onSeptember 21, 2013
$().ready(function(){ 
for(var i=0;i<5;i++){ 
/** 
* 这种写法不专业,如果处于循环里,就会注册5次事件,点击后alert5次 
*/ 
// $("#aa").click(function(){ 
// alert("hahahaha"); 
// }); 
/** 
* 这种写法才是专业的,在注册一次点击事件前,先解绑点击事件,然后再绑定一个点击事件,所以到最后只绑定了一次点击事件 
*/ 
$("#aa").unbind("click"); 
$("#aa").bind("click",function(){ 
alert("oooooo"); 
}); 
} 
});

自定义事件:
$().ready(function(){ 
/** 
* 自定义事件,在click的时候进行触发 
*/ 
$("#aa").bind("click",function(){ 
//事件触发器,触发自定义的event 
$(this).trigger("点我"); 
}); 
//自定义一个"点我"事件 
$("#aa").unbind("点我"); 
$("#aa").bind("点我",function(){ 
alert("点我"); 
}); 
});

传递参数的自定义事件:
$().ready(function(){ 
/** 
* 自定义事件,在click的时候进行触发 
*/ 
$("#aa").bind("click",function(){ 
//事件触发器,触发自定义的event,传递实参 
$(this).trigger("点我",['张三','李四']); 
}); 
//自定义一个"点我"事件 
$("#aa").unbind("点我"); 
//第一个参数是固定的,后面都是自定义,就算把event写成别的名字,它还是固定类型,鼠标事件 
$("#aa").bind("点我",function(event,a,b){ 
alert("点我"); 
alert(a); 
alert(b); 
}); 
});

练习:

写一个自定义事件,把该事件绑定在一个下拉列表框中

当下拉列表框选中一项的时候,触发该事件,以参数的形式把选中的值传递到自定义事件中,并输出。

html:

<select id="select"> 
<option value="111">111</option> 
<option value="222">222</option> 
<option value="333">333</option> 
</select>

js:
$().ready(function(){ 
$("option").unbind("click"); 
$("option").bind("click",function(){ 
$(this).trigger("选择并显示",[$(this).val()]); 
}); $("option").unbind("选择并显示"); 
$("option").bind("选择并显示",function(event,value){ 
alert(value); 
}); 
});
Javascript 相关文章推荐
使用JS操作页面表格,元素的一些技巧
Feb 02 Javascript
JavaScript修改css样式style
Apr 15 Javascript
jQuery 的全选(全非选)即取得被选中的值使用介绍
Nov 12 Javascript
简单的Jquery遮罩层代码实例
Nov 14 Javascript
js日期、星座的级联显示代码
Jan 23 Javascript
JavaScript中判断页面关闭、页面刷新的实现代码
Aug 27 Javascript
Enter回车切换输入焦点实现思路与代码兼容各大浏览器
Sep 01 Javascript
js实现鼠标悬浮给图片加边框的方法
Jan 30 Javascript
微信中一些常用的js方法汇总
Mar 12 Javascript
js函数柯里化的方法和作用实例分析
Apr 11 Javascript
vue data对象重新赋值无效(未更改)的解决方式
Jul 24 Javascript
vue数据字典取键值项目的字典问题
Apr 12 Vue.js
JavaScript加强之自定义callback示例
Sep 21 #Javascript
js中通过split函数分割字符串成数组小例子
Sep 21 #Javascript
js中的异常处理try...catch使用介绍
Sep 21 #Javascript
使用JS读秒使用示例
Sep 21 #Javascript
用RadioButten或CheckBox实现div的显示与隐藏
Sep 21 #Javascript
JS.GetAllChild(element,deep,condition)使用介绍
Sep 21 #Javascript
JS.findElementById()使用介绍
Sep 21 #Javascript
You might like
解决File size limit exceeded 错误的方法
2013/06/14 PHP
JS日历 推荐
2006/12/03 Javascript
javascript中利用数组实现的循环队列代码
2010/01/24 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(五)可移动地图的实现
2013/01/23 Javascript
使用js修改客户端注册表的方法
2013/08/09 Javascript
jQuery支持动态参数将函数绑定到事件上的方法
2015/03/17 Javascript
Javascript设计模式理论与编程实战之简单工厂模式
2015/11/03 Javascript
基于javascript实现文字无缝滚动效果
2016/03/22 Javascript
jQuery qrcode生成二维码的方法
2016/04/03 Javascript
漫谈JS引擎的运行机制 你应该知道什么
2016/06/15 Javascript
javascript实现简易计算器
2017/02/01 Javascript
Webpack如何引入bootstrap的方法
2017/06/17 Javascript
详解vue+vueRouter+webpack的简单实例
2017/06/17 Javascript
JS实现的简单表单验证功能示例
2017/10/13 Javascript
浅谈Node模块系统及其模式
2017/11/17 Javascript
javascript、php关键字搜索函数的使用方法
2018/05/29 Javascript
在小程序中使用Echart图表的示例代码
2018/08/02 Javascript
vue项目持久化存储数据的实现代码
2018/10/01 Javascript
vue与原生app的对接交互的方法(混合开发)
2018/11/28 Javascript
python 正则表达式 概述及常用字符
2009/05/04 Python
让python json encode datetime类型
2010/12/28 Python
python 图片验证码代码分享
2012/07/04 Python
利用Python实现网络测试的脚本分享
2017/05/26 Python
Python标准库sched模块使用指南
2017/07/06 Python
Python中enumerate函数代码解析
2017/10/31 Python
用Python写王者荣耀刷金币脚本
2017/12/21 Python
Python 图像处理: 生成二维高斯分布蒙版的实例
2019/07/04 Python
python多任务之协程的使用详解
2019/08/26 Python
详解如何用python实现一个简单下载器的服务端和客户端
2019/10/28 Python
浅谈css3中的渐进增强和优雅降级
2017/12/01 HTML / CSS
英国最大的女性服装零售商:Dorothy Perkins
2017/03/30 全球购物
瑜伽服装品牌:露露柠檬(lululemon athletica)
2017/06/04 全球购物
Myprotein丹麦官网:欧洲第一运动营养品牌
2019/04/15 全球购物
大学生职业生涯规划书汇总
2014/03/20 职场文书
人事局接收函
2015/01/30 职场文书
Nginx配置文件详解以及优化建议指南
2021/09/15 Servers