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();});