O maior problema que estou tendo com a aprendizagemjQuery é como eu obtenho o caminho para um determinado elemento, id ou classe no meu documento? Eu tenho o Firebug e as extensões jQuery do Firebug instaladas, mas não vejo uma maneira de determinar o caminho completo. Alguma dica para um n00b?
Respostas:
1 para resposta № 1Eu acho que não é possível com uma função JQuery única ... como eu encontrei esta.
1 para resposta № 2
Se você escreveu HTML válido, tudo o que você precisa é o próprio ID (a parte no atributo id do seu elemento). Se o seu id for "myID1", o seletor do jQuery que você precisa é $("#myID1")
assumindo que você está usando $
para jQuery.
Se você está falando sobre atravessar a árvore DOM para obter elementos sem ID, olhe para o seletor de crianças, a seletor n-filho, a função .crianças(), a : pai seletor, o .pais() função e .parent () função. Todos estes podem ajudar com DOM travessia.
1 para resposta № 3
Bem, se você estiver usando o Firebug, pode simplesmente observar isso ao inspecionar quaisquer elementos.
Mas isso geralmente é usado para outras coisas, e usar a coisa toda é ineficiente e não é recomendado se for usado como um seletor de jQuery.
1 para resposta № 4
Quer dizer que quer conhecer os pais todo o caminho? Olhe para a esta e esta.
1 para resposta № 5
Se você só precisa do caminho do seu elemnt que você deseja anexar jquery também, você vai encontrá-lo como um breadcrumb no painel firebug depois de inspecioná-lo.
1 para resposta № 6
Você precisaria configurar uma função personalizada para percorrer os pais do elemento usando as funções .parent () e .parents (). Aqui estão algumas informações:
e
http://api.jquery.com/parents/
Você pode executar um script simples para verificar existência e saída para um array ou outro tipo de variável.
Pseudo-código:
function traverse_path(elementId) {
if($("#" + elementId).parent()) {
traverse_path($("#" + elementId).parent().attr("id"));
return $("#" + elementId).parent().attr("id") + " > ";
} else {
return null;
}
}