Jquery差异B/w Jquery绑定事件
Jquery Difference B/w Jquery bind events
以下语句之间有什么区别。在这种情况下,我应该选择哪一个而不是另一个。
$(document).on("click","#btn",callback);
$("#btn").on("click",callback);
查看事件委托jQuery文档
基本上
$(document).on("click","#btn",callback);
将点击绑定到文档DOM,而不是直接绑定到元素,这在将DOM元素附加到窗口时非常有用,在这种情况下,#btn选择器还不存在。
基本上有直接
$(document).on("click","#btn",callback);
您正在将影响匹配子体(#btn
)的事件分配给document
,这些子体在运行该行代码时可能存在,也可能不存在。
$("#btn").on("click",callback);
通过委派,您将影响代码行运行时存在的所有匹配元素,而不会影响以后创建的匹配元素。
http://api.jquery.com/on/
事件处理程序仅绑定到当前选定的元素;当代码调用.on()时,它们必须存在于页面上。为了确保元素存在并且可以选择,请在文档就绪处理程序中为页面上HTML标记中的元素执行事件绑定。如果将新的HTML注入到页面中,请选择元素,并在将新HTML放入页面后附加事件处理程序。或者,使用委托事件附加事件处理程序,如下所述。
委托事件的优点是,它们可以处理以后添加到文档中的子元素中的事件。通过选择在附加委托事件处理程序时保证存在的元素,可以使用委托事件来避免频繁附加和删除事件处理程序。例如,如果事件处理程序希望监视文档中的所有冒泡事件,则此元素可以是模型视图控制器设计中视图的容器元素,也可以是文档。在加载任何其他HTML之前,文档元素在文档的头部是可用的,因此在那里附加事件是安全的,而无需等待文档准备就绪。
直接
$("#btn").on("click",callback);
DOM中存在
id
的元素被单击,调用callback
。如果是DOM处理程序中存在的将被附加。将事件侦听器直接绑定到元素
委托
阅读事件委派。
使用.on()
$(document).on("click","#btn",callback);
当文档中的元素添加了
id
btn
时,单击该元素即可运行CCD_ 7函数。将事件侦听器绑定到文档对象
语法
$( elements ).on( events, selector, data, handler );
- 将jQuery绑定到多个元素
- jQuery 绑定以选择更改
- 使用ajax/jquery绑定Json数据
- 在.load和.getScript之后的jQuery绑定仅在警报之后有效
- jQuery绑定了没有DOM元素的AJAX事件
- Jquery差异B/w Jquery绑定事件
- html+jquery(绑定onclick事件以执行onclick之前的操作)
- jQuery绑定到粘贴事件,如何获取粘贴的内容
- jquery绑定函数不起作用
- jQuery绑定ajax:成功地不在rails3app中为新创建的(ajax)项工作
- jQuery 绑定/更改为下拉表单
- jQuery绑定与不同的this
- jQuery 绑定函数不起作用
- 无法使用 jquery 绑定按钮上的单击事件
- 在 SharePoint Application Page 2013 中使用 JQuery 绑定和取消绑定函数
- jQuery 绑定和“点击”evnts 在 IE9 中不起作用
- jQuery 绑定以切换元素的不透明度
- jQuery:绑定元素以在其内容更改时显示/隐藏
- JQuery 绑定此和数据属性
- JQuery 绑定 () 导致的异常行为