本文主要介绍JQuery的trigger()和bind()方法。
1. $(selector).bind(event,data,function)方法为被选元素添加一个或多个事件处理程序,并规定事件发生时运行的函数。
event:必需,规定添加到元素的一个或者多个事件。由空格分隔多个事件。必需是有效的事件
data:可选,规定传递到处理函数中的数据。
function:必需,规定事件发生时的运行函数
2. $(selector).trigger(event,[param1,param2,...])触发被选元素的指定事件类型。
event:必需,规定指定元素要触发的事件,可以使用自定义事件(使用bind()函数来附加)。
[param1,param2,...]可选,传递到事件处理程序的额外参数,额外的参数对自定义的事件特别有用。
<script>
$(document).ready(function(){
var str="hello world";
$("#eventsbtn0").bind("click",str,function(event){ //此处event可选
$(".eventBind").css("backgroundColor","red");
$(".eventBind").val(str);
$(".eventBind").after(event.type); //click
});
$("#eventsbtn1").bind("mybtn",function(event,message1,message2){ //event不可少,否则参数传递出错。
$(".eventTrigger").css("backgroundColor","red");
$(".eventTrigger").val(message1+":"+message2); });
$("#eventsbtn1").click(function(){
$("#eventsbtn1").trigger("mybtn",["hello","world"]);//取消上一句的click事件,此句可以自动执行
}); });
</script>
bind()函数可以绑定一个或者多个事件,可以绑定标准的事件,如click,mouseout,moveon等,也可以绑定自定义的事件。绑定自定义的事件时通常要与触发trigger()函数一起用。
bind()和trigger()都可以传递参数进去 ,只是两者传递的方式不一样,如上面的程序所示。
trigger()通常用在自定义的事件时,还需要将自定义事件绑定处理函数。