jquery如何获取事件_冒泡

方法一

<a href="#" οnclick="detail(this,event.target);" ><a/>
function detail(a,b){
$(a)
} 

方法二(用绑定事件)

在 JQuery 中,可以使用 bind 方法来为元素绑定事件,该方法的声明如下:

bind( type [, data], fn)

第一个参数:事件类型,如 click,blue;

第二个参数:成为 event.data 属性值,在事件处理器方法中,作为参数传递进来;

第三个参数:事件处理器方法;

<div id="m">abc</div>
<script src="scripts/jquery.min.js"></script>
<script language="javascript">
    $("#m").bind("click", "theValue", function(e){
        alert(e.data);
    });
</script>


上面的代码,是一个完整的例子,在这个例子中,我们可以看到 e.data 的值就是 theValue。

自定义事件

如下可以注册一个自定义事件:

$("#m").bind(“myclick”, function(){

  

});

触发它,则使用:

$("#m").trigger(“myclick”);


结尾说一个之前没注意的地方:onload 事件不能同时指定两个事件处理器,但是 ready 事件是可以的。

参考http://www.cnblogs.com/luminji/p/3636233.html

ps:通过绑定事件阻止冒泡(阻止冒泡尽量放在方法的开始,不要放在大量业务代码的后面,可能会失效)

$("p").bind("click",function(event){

    event.stopPropagation();
    event.preventDefault();//阻止元素的默认行为,如<button type="submit">元素会默认提交表单
 })

event.target-----获取到触发事件的元素

$("a[href='http://google.com']").click(function(event){

var tg=event.target;

alert(tg.href);

return false;//这种方法也能阻止事件默认行为,阻止链接跳转

})

输出:http://google.com

ps:

event和$(this)对象。

 

1.this和event.target的区别:

js中事件是会冒泡的,所以this是可以变化的,但event.target不会变化,

它永远是直接接受事件的目标DOM元素;

 

2.this和event.target都是dom对象,如果要使用jquey中的方法可以将他们转换

为jquery对象:$(this)和$(event.target);

比如:event.target和$(event.target)的使用:

Js代码   收藏代码
  1. $('.delButton').click(function(e){  
  2.         //alert($(e.target).html());  
  3.         alert($(this).parent().html());   
  4.         $(this).parent().parent().remove();  
  5. }); 

ps:

<a οnclick="viewBanner(id,event);" href="javascript:void(0);">查看</a>
 function viewBanner(id,event) {
            console.log(event)//鼠标事件
            console.log(event.target)//事件作用的目标target
            $("#new").modal("show");//bootstrap模态框手动调用
        }




  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值