Web开发有时候我们需要动态生成 节点,例如 菜单 按钮之类的,但是还需要给其绑定事件.
实现方式肯定有好多种,但是这里推荐一种:
通过jQuery 动态给 class 属性绑定事件.
解决方法,使用 jQuery 的 live(),点此查看详细介绍 .
通过 live() 方法为附加的事件处理程序适用于匹配选择器的当前及未来的元素(比如由脚本创建的新元素)。
举个栗子
<script type="text/javascript">
$(function () {
// 为class 为 test 的节点绑定 click 事件
$(".test").live("click",function(event){
...
});
});
</script>
那么之后 添加<div class="test"></div>
,都会绑定 click 事件.
注意: 由于 jQuery 版本 1.7 后, on() 方法是 bind()、live() 和 delegate() 方法的新的替代品,建议使用新的API,点此查看 on() 的详细介绍:
$(document).on("click",".test",function(event){
...
});