在写JS时,我们在处理动态生成的HTML触发事件时,会无效。比如:
$("body").html("<b>I Love www.11px.cn</b>"); $("b").click(function(){alert(123)})
你会发现点击B标签,并不会触发alter弹窗。具体逻辑原因精准像素没深究,希望研究的可以去网上看看。
这里精准像素只分享方法,会用到JQ的.on语法。
$("body").html("<b>I Love www.11px.cn</b>"); $("body").on("click","b",function(){ alert(123) });
这个就相当于重新选取了一次,从body开始一直到下面的b标签,这样就可以重新触发生成的B标签事件了。
当然里面的click点击事件也可以换成其他任何事件。
写的不是非常专业,希望能够帮助大家。
本文转载自:精准像素:11px.cn ,感谢作者分享实用知识