欢迎使用CSDN-markdown编辑器
2016-05-22 00:17
246 查看
Jquery的on语法
解决方法:
on方法中要先找到原选择器(父容器 例:body),再找到动态添加的选择器(子元素 例:.add,按class类名选择)。
对于之前on无法绑定新增元素的原因,主要在于on绑定的元素上未考虑父容器与子元素的关系,以及childSelector 这个参数值。
即on应该作用于新增元素的父容器上,再使用childSelector 这个参数值选择新增子元素进行方法绑定!;
$(selector).on(event,childSelector,data,function,map)
参数 | 描述 |
---|---|
event | 必需。规定要从被选元素移除的一个或多个事件或命名空间。由空格分隔多个事件值。必须是有效的事件。 |
childSelector | 可选。规定只能添加到指定的子元素上的事件处理程序(且不是选择器本身,比如已废弃的 delegate() 方法)。 |
data | 可选。规定传递到函数的额外数据。 |
function | 可选。规定当事件发生时运行的函数。 |
map | 规定事件映射 ({event:function, event:function, …}),包含要添加到元素的一个或多个事件,以及当事件发生时运行的函数。 |
on方法中要先找到原选择器(父容器 例:body),再找到动态添加的选择器(子元素 例:.add,按class类名选择)。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <script src="js/jquery-1.11.3.js"></script> <style> p{display: block;margin: 30px 0px;background: #CCCCCC;} </style> <script> $(function(){ $("body").on("click",".add",function(){ $(this).css("background","#999"); }); $("#test").click(function(){ $("body").append("<p class='add'>11111</p>") }) }) </script> </head> <body> <p class="add">11111</p> <button id="test">测试</button> </body> </html>
对于之前on无法绑定新增元素的原因,主要在于on绑定的元素上未考虑父容器与子元素的关系,以及childSelector 这个参数值。
即on应该作用于新增元素的父容器上,再使用childSelector 这个参数值选择新增子元素进行方法绑定!;
相关文章推荐
- 一步一步跟我学易语言之第二个易程序菜单设计
- FCK编辑器(FCKEditor)添加新按钮和功能的修改方法
- ecshop后台编辑器替换成ueditor编辑器
- jquery可定制的在线UEditor编辑器
- 10个基于jQuery或JavaScript的WYSIWYG 编辑器整理
- PHP网页 Ewebeditor 编辑器嵌入方法
- kindSoft在线网页编辑器简单的配置参数介绍
- dedecms5.5 最新版ckeditor编辑器整合教程
- javascript 在线文本编辑器实现代码
- 在线编辑器中换行与内容自动提取
- 网页上的Javascript编辑器和代码格式化
- 基于jquery实现可定制的web在线富文本编辑器附源码下载
- 浅析Yii2集成富文本编辑器redactor实例教程
- ArtEditor富文本编辑器增加表单提交功能
- 推荐5款跨平台的PHP编辑器
- 超漂亮的Bootstrap 富文本编辑器summernote
- 5款适合PHP使用的HTML编辑器推荐
- JS模仿编辑器实时改变文本框宽度和高度大小的方法
- Kindeditor在线文本编辑器如何过滤HTML
- 9个非常棒的Android代码编辑器 移动开发者的最爱