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