jquery为新增元素添加事件
2015-08-26 16:12
701 查看
<script type="text/javascript"> var $id=1; $(function(){ $(".hehe").click(function(){ $id+=1; $(this).after("<div class='hehe' id='"+$id+"'>"+$id+"</div>"); }); }); </script> <body> <div class="hehe" id="1">1</div> </body>
这种形式的事件只作用于已经存在的元素,新增的元素无效。以上例子中只能点击id=1的div,不能点击id=234..
<script type="text/javascript"> var $id=1; $(function(){ $("body").on("click",".hehe",function(){ $id+=1; $(this).after("<div class='hehe' id='"+$id+"'>"+$id+"</div>"); }); </script> <body> <div class="hehe" id="1">1</div> </body>
以上例子可以为新增的元素绑定事件,新增的id都可以点击。当click时,事件从.hehe开始冒泡到body,然后触发body内的新增的.hehe,从而绑定事件。
<script type="text/javascript"> var $id=1; $(function(){ $(".hehe").on("click",function(){ $id+=1; $(this).after("<div class='hehe' id='"+$id+"'>"+$id+"</div>"); }); }); </script> <body> <div class="hehe" id="1">1</div> </body>
但是以上代码只能也点击id1,原因是当click时,事件只能冒泡到第一个.hehe,而新增的.hehe是同级元素,不能为他们绑定事件。
jQuery on()方法是官方推荐的绑定事件的一个方法,[b]适用于未创建的元素。
[/b]
$(selector).on(event,childSelector,data,function,map)
相关文章推荐
- jquery中prop()方法和attr()方法的区别浅析
- jQuery Validate 表单验证
- 自动轮播图
- jquery selector及层级选择器
- jquery实现LED广告牌旋转系统图片切换效果代码分享
- [JQ权威指南]第十二天:使用Jquery事件改变文本框的样式
- jquery实现图片水平滚动效果代码分享
- jquery validate和jquery form 插件组合实现验证表单后AJAX提交
- jquery ajax对特殊字符进行转义防止js注入使用示例
- jquery实现漂亮的二级下拉菜单代码
- JQuery中each()的使用方法说明
- jQuery.extend 函数详解
- jquery选择器
- Jquery Mobile 开发问题
- jquery中checkbox记录
- JS/jQuery 遍历对象属性
- Kindeditor与Jquery冲突 textarea得不到数据
- jquery循环输出数组
- jQuery 插件分享-非常优秀的tab插件tabulous- 学徒帮
- JQuery中$.ajax()方法参数详解