jquery中的bind事件,详解,传参
第一个,关于这句的解释:
$(window).bind('load.jcarousel', function() { windowLoaded = true; });
1. 一次可以绑定多个事件。如:
$('#foo').bind({
click: function() {
// do something on click
},
mouseenter: function() {
// do something on mouseenter
}
});
2. 任何作为type参数的字符串都是合法的;如果一个字符串不是原生的JavaScript事件名,那么这个事件处理函数会绑定到一个自定义事件上。这些自定义事件绝对不会由浏览器触发,但可以通过使用.trigger()或者.triggerHandler()在其他代码中手动触发。
3. 如果type参数的字符串中包含一个点(.)字符,那么这个事件就看做是有命名空间的了。这个点字符就用来分隔事件和他的命名空间。如:
$obj.bind('click.name', handler) 那么字符串中的 click 是事件类型,而字符串 name 就是命名空间。
第二个,传递参数以及一些特殊用法
首先是传递参数:
1.<script>
2.function showAlert(events){
3. alert(events.data.foo);
4.}
5.$('#myBtn').bind('click',{foo:'click'},showAlert);
6.</script>
特殊用法:
使用在submit上的click
<script> $('#myBtn').bind('click',function(){ return false; }) </script>
还有没看明白的:
还有一些方法可以取消默认行为和阻止事件起泡:preventDefault 和stopPropagation
1.<script>
2.$('#myBtn').bind('click',function(event){
3.event.preventDefault();//取消默认的click行为
4.});
5.$('#myBtn').bind('click',function(event){
6.event.stopPropagation();//阻止click事件起泡
7.});
8.
9.</script>