Questa domanda è correlata alla prestazione.jQuery cercherà l'ID prima di filtrare altri parametri nel selettore?
Se uso un selettore come la seguente
$('#myID a') // Does this find #myID and filter by a?
O dovrei scrivere la dichiarazione come questo?
$('#myID').find('a')
io non sono sicuro se jQuery è abbastanza intelligente per eseguire questa istruzione utilizzando l'ID primo o se funziona esattamente come CSS e legge da destra a sinistra. Non è un grosso problema con i tag, ma quando si esegue qualcosa come
$('#myID .myClass')
Si fa una grande differenza in termini di prestazioni.
Come appare nei tuoi esempi è che si desidera trovare tutti gli elementi poi filtrare in base all'ID. '$ ('a # myID)' sarebbe il modo in cui lo farei. Seleziona il tag di ancoraggio che ha l'ID di myID. Digitandolo come '$ ('# myID a')' in realtà selezionerebbe tutti i tag di ancoraggio che sono figli di myID. – PCasagrande
Vero, ho omesso il .children() in caso di incidente. È pensato per afferrare l'elemento genitore tramite id e poi filtrare i bambini che cercano un'ancora. – THEtheChad