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 相关文章推荐
再次更新!MSClass (Class Of Marquee Scroll通用不间断滚动JS封装类 Ver 1.6)
Feb 05 Javascript
代码精简的可以实现元素圆角的js函数
Jul 21 Javascript
html数组字符串拼接的最快方法
Sep 16 Javascript
Javascript中找到子元素在父元素内相对位置的代码
Jul 21 Javascript
Javascript call和apply区别及使用方法
Nov 14 Javascript
JavaScript严格模式详解
Nov 18 Javascript
JSON与XML的区别对比及案例应用
Nov 11 Javascript
详解Jquery的事件操作和文档操作
Dec 19 Javascript
js实现3d悬浮效果
Feb 16 Javascript
ES5 ES6中Array对象去除重复项的方法总结
Apr 27 Javascript
layui前段框架日期控件使用方法详解
May 19 Javascript
JavaScript实现汉字转换为拼音及缩写的方法示例
Mar 28 Javascript
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
利用php绘制饼状图的实现代码
2013/06/07 PHP
PHP strstr 函数判断字符串是否否存在的实例代码
2013/09/28 PHP
php文件夹的创建与删除方法
2015/01/24 PHP
PHP文件缓存类示例分享
2015/01/30 PHP
php+mysql+ajax实现单表多字段多关键词查询的方法
2017/04/15 PHP
js过滤HTML标签以及空格的思路及代码
2013/05/24 Javascript
js如何实现设计模式中的模板方法
2013/07/23 Javascript
Yii2使用Bootbox插件实现自定义弹窗
2015/04/02 Javascript
jquery实现的横向二级导航效果代码
2015/08/26 Javascript
浅谈JQuery+ajax+jsonp 跨域访问
2016/06/25 Javascript
Bootstrap3 模态框使用实例
2017/02/22 Javascript
JavaScript之filter_动力节点Java学院整理
2017/06/28 Javascript
Node.js学习之TCP/IP数据通讯(实例讲解)
2017/10/11 Javascript
JavaScript登录验证基础教程
2017/11/01 Javascript
vue计算属性时v-for处理数组时遇到的一个bug问题
2018/01/21 Javascript
JavaScript实现仿Clock ISO时钟
2018/06/29 Javascript
vue主动刷新页面及列表数据删除后的刷新实例
2018/09/16 Javascript
Echarts地图添加引导线效果(labelLine)
2019/09/30 Javascript
详细分析React 表单与事件
2020/07/08 Javascript
快速实现基于Python的微信聊天机器人示例代码
2017/03/03 Python
从CentOS安装完成到生成词云python的实例
2017/12/01 Python
Python3实现购物车功能
2018/04/18 Python
Python基于百度AI的文字识别的示例
2018/04/21 Python
Python数据分析matplotlib设置多个子图的间距方法
2018/08/03 Python
在Mac下使用python实现简单的目录树展示方法
2018/11/01 Python
浅谈django 模型类使用save()方法的好处与注意事项
2020/03/28 Python
在IE6系列等老式浏览器中使用HTML5的新标签实现方案
2012/12/25 HTML / CSS
Cotton On香港网站:澳洲时装连锁品牌
2018/11/01 全球购物
美国爆米花工厂:The Popcorn Factory
2019/09/14 全球购物
Java中有几种方法可以实现一个线程?用什么关键字修饰同步方法?stop()和suspend()方法为何不推荐使用?
2015/08/04 面试题
2014学年自我鉴定
2014/02/23 职场文书
药店促销活动策划方案
2014/08/24 职场文书
邓小平理论心得体会
2014/09/09 职场文书
2015年学校安全管理工作总结
2015/05/11 职场文书
教师节主题班会教案
2015/08/17 职场文书
扩展多台相同的Web服务器
2021/04/01 Servers