jquery 对于新插入的节点 的操作绑定(点击事件,each等)

因为最近项目遇到这个问题,下面给大家带来一篇Jquery对新插入的节点 获取并对这个节点绑定事件失效的解决方法。我觉得挺不错的,大家也可以参考一下:

对于绑定事件来讲:

      方法一:使用live

       live()函数会给被选的元素绑定上一个或者多个事件处理程序,并且规定当这些事件发生时运行的函数。通过live()函数适用于匹配选择器的当前及未来的元素。比如,通过脚本动态创建的元素。

       实现如下:

 
1
2
3
$( '.liLabel' ).live( 'click' , function (){
  alert( 'OK' );
});

       方法二:使用on

      可以通过on方法绑定事件,可以绑定到它的父级或者body中,实现如下:

1
2
3
4
5
6
7
$( "#ulLabel" ).on( 'click' , '.liLabel' , function (){
  alert( 'OK' )
});
或者:
$( "body" ).on( 'click' , '.liLabel' , function (){
  alert( 'OK' )
});

 

 

 

 

对于each()事件来讲:

     方法一、刚创建完元素的时候,就立刻使用each方法

     代码如下:

     $('#btn').on("click", function(){

          $('#div').append("<input type='text' />");

          $("input").each(function(){

              //TODO:

          });

     });

    方法二、使用setTimeout方法在页面加载完成一段时间后再使用each方法

    代码如下:

    setTimeout(function(){

        $("input").each(function(){

            //TODO:

        });

    },1000);

 

是不是新插入的节点 对这个节点绑定事件失效问题解决了,希望这篇随笔能够帮助大家

     

转载于:https://www.cnblogs.com/yf-html/p/7514330.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值