首页 > jquery中的事件toggle如何在新追加入的元素中生效

jquery中的事件toggle如何在新追加入的元素中生效

jquery中的事件toggle如何在新追加入的元素中生效


想要动态加载的内容也触发bind的动作,用live
之前是酱紫

$('.clickme').bind('click', function() {
  alert("Bound handler called.");
});

换成酱紫

$('.clickme').live('click', function() {
  alert("Live handler called."); 
});

同样

$('.clickme').live('click', function() {
  $('.clickme').toggle();
});

@舞林 的回答中

$('.clickme').bind('click', function() {
  alert("Bound handler called.");
});

如果所有的.clickme都是在同一个元素#parent的包裹下,也可以写成这样:

$('#parent').click(function(e){
  //e.target 就是点到的那个元素
  if($(e.target).hasClass('clickme')){
    alert('Click handler called');
  }
});

可以使用1.7开始的API ".on" ,这个更直观点:

$('body').on("click", ".clickme", function(){dosomething();});
【热门文章】
【热门文章】