Estou usando o jQuery há um tempo. Eu queria usar o parent()
seletor. Eu também vim com o closest()
seletor. Não foi possível encontrar nenhuma diferença entre eles. Existe algum? Se sim, o que?
Qual é a diferença entre parent()
, parents()
e closest()
?
Respostas:
fonte
.parents()
(em vez de.parent()
) que recupera todos os elementos?de http://api.jquery.com/closest/
Aqui estão tópicos relacionados:
Qual é a diferença entre .closest () e .parents ('selector')?
https://stackoverflow.com/a/2200805/149206
fonte
Note
.The .parents() and .parent() methods are similar, except that the latter only travels a single level up the DOM tree. Also, $("html").parent() method returns a set containing document whereas $("html").parents() returns an empty set.
As diferenças entre os dois, embora sutis, são significativas:
De documentos jQuery
fonte
Há diferença entre ambos
$(this).closest('div')
e$(this).parents('div').eq(0)
Basicamente,
closest
inicie o elemento correspondente a partir do elemento atual, enquanto o elementoparents
inicial é iniciado (um nível acima do elemento atual)fonte
parent()
O método retorna o elemento pai direto do selecionado. Este método percorre apenas um único nível na árvore DOM.parents()
O método nos permite pesquisar os ancestrais desses elementos na árvore DOM. Comece a partir do seletor fornecido e suba.fonte
$(this).closest('div')
é igual$(this).parents('div').eq(0)
.fonte