Ottenere l'elemento base da un oggetto jQuery
-
09-06-2019 - |
Domanda
Faccio fatica a trovare la terminologia giusta qui, ma se hai un oggetto jQuery...
$('#MyObject')
...è possibile estrarre l'elemento base?Ciò significa che l'equivalente di questo:
document.getElementById('MyObject')
Soluzione
Sì, usa .get(index)
.Secondo il documentazione:
IL
.get()
Il metodo garantisce l'accesso ai nodi DOM sottostanti ciascun oggetto jQuery.
Altri suggerimenti
$('#MyObject').get(0);
Penso che sia quello che vuoi.Penso che puoi anche fare riferimento ad esso come un normale array con:
$('#MyObject')[0];
Ma non sono sicuro che funzionerà sempre.Attenersi alla prima sintassi.
Un oggetto jQuery è un insieme di elementi.Nel tuo caso, un insieme di un elemento.Ciò differisce da alcune altre librerie, che racchiudono singoli elementi e forniscono una sintassi alternativa per i selettori che restituiscono più corrispondenze.
Aaron W E VolkerK già spiegato come accedere al primo elemento (indice 0) nel set.
Ho testato le dichiarazioni di Aaron su tutti i browser che ho a disposizione sul mio box:
$('#MyObject').get(0);
contro
$('#MyObject')[0];
Per quanto ne so, è solo una questione di preferenze personali.
Funzionalmente, entrambe queste istruzioni sono equivalenti sia per gli elementi esistenti che per quelli non esistenti.Ho testato i seguenti browser:Cromo 27.0, FF 21.0, IE10, IE9, IE8, IE7, IE6.
Nei test di velocità che ho eseguito non è sempre stato possibile stabilire quale variazione fosse più veloce;il risultato non era sempre coerente, anche sullo stesso browser.Per i test di velocità ho testato solo elementi esistenti.I risultati dei miei test sono Qui.