non riuscivo a trovare una rapida risposta a questo problema ...jQuery: controllanti() volte 3 - come evitare di accatastamento dei genitori se non so un selettore
Sono all'interno di un click-evento e using $(this)
Sto provando a selezionare un elemento di tre livelli senza sapere quale selettore ha.
$(this).parent().parent().parent().attr('id')
Questo funziona bene, ma c'è un modo migliore per farlo?
Mi piace parent(3x)
o simile?
Minor tempo nitpick: Usa '.prop()' 'non .attr()' per ottenere l'id. –
@AnthonyGrist ma id è un attributo non una proprietà, giusto? –
@roasted - È entrambi, se l'attributo id viene utilizzato nell'HTML. La proprietà id è sempre presente e cambia quando l'attributo cambia. L'uso di prop() sarebbe più veloce, poiché cerca la proprietà sull'elemento e non l'attributo HTML. Come sidenote, tutte le risposte sembrano utilizzare i genitori(), che potrebbero essere molto costosi, a seconda di quanto è grande il DOM. Aggiungere un identificatore di alcuni tipi e usare il più vicino() sarebbe meglio. – adeneo