本文介绍了在()上使用jQuery时,为什么使用(document)与元素本身?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想用jQuery专家用他们自己的话来解释为什么$(document)标识符被其他人推荐用于jQuery的on()语句,而不仅仅是使用一个元素本身



示例1:为什么在这里使用$(document)比示例#2好?

  $(document)。 on(click,.areaCodeList a,function(){
// do stuff
});

示例2:与示例1相比,为什么以这种方式使用元素考虑不好的做法? (。),函数(){
// do stuff $()。

  $(。areaCodeList a)。 b $ b}); 


解决方案

这两个都是有效的。



前者适用于动态添加的元素。您使用文档,因为您正在委托文档对象的子项上的事件,因此事件会冒泡到文档级别。选择最接近的父母也可以更方便(并且父母必须在加载时存在于页面上)。

后者仍然有效,并且是只需将事件绑定到特定元素即可。



我个人不建议通过文档对象进行委托,而是在页面加载时存在的最近父母。



此处

a>是 on()的文档。


I'd like a jQuery expert in their own words to explain why the $(document) identifier is recommended by others for jQuery's on() statement vs just using an element itself

Example 1: Why is using $(document) here better then Example #2?

$(document).on("click", ".areaCodeList a", function(){
    // do stuff
});

Example 2: Why is using the element this way considering not good practice compared to Example 1?

$(".areaCodeList a").on("click", function(){
    // do stuff
});
解决方案

Both of those are valid.

The former works for dynamically added elements. You use document because you're delegating events on children of the document object, so events bubble up to the document level. It's also more convenient to select the closest parent you can (and the parent must exist on the page at load).

The latter still works, and is a preferred way to simply bind events to specific elements.

I personally don't recommend delegating through the document object, but rather the closest parent that exists on page load.

Here are the docs for on().

这篇关于在()上使用jQuery时,为什么使用(document)与元素本身?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

11-03 02:39