jquery事件知识点

1.在javascript中利用如下方式添加事件:

        var tsd = document.getElementById("testDiv4");
        tsd.onclick = function(){
            alert("a");
        };
        tsd.onclick = function(){
            alert("b");
        };   

   在第二次添加后会覆盖之前定义的onclick,也就是只会弹出b,但是可以通过添加事件多播委托的方法来实现不覆盖,如:

if( tsd .addEventListener )//for dom
{
tsd .addEventListener( “click”, fnHandler, false )
}
else if( tsd.attachEvent )//for ie
{
tsd .attachEvent( "onclick", fnHandler);
}

这样就比较麻烦要区分不同的浏览器

 

利用jquery就简单多了,直接用bind方法来添加事件处理,如:

$("#testDiv4").bind("click", function(event) { alert("one"); });
$("#testDiv4").bind("click", function(event) { alert("two"); });

这样就不会覆盖,会一次弹出one,two

 

2.可以在html标签中编写自定义属性,通过javascript的getAttribute获取或者通过jquery的attr方法获取:

<div id="testDiv5" customer="customer data 1">
          获取自定义数据
 </div>

       $("#testDiv5").bind("click",function(event){
           //alert(event.target.getAttribute("customer"));
           alert($(event.target).attr("customer"));
       });

或者:

       $("#testDiv5").bind("click",{custom: "this is custom data"},function(event){
           alert(event.data.custom);
       });

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值