Se il mio html è come qui di seguitoQual è il necessasity di # in jQuery
<div id="TestHash"> </div>
posso accedervi come $("#TestHash")
, $(TestHash)
. Entrambi risulteranno uguali. qual è l'utilizzo dell'elemento senza # ??
Se il mio html è come qui di seguitoQual è il necessasity di # in jQuery
<div id="TestHash"> </div>
posso accedervi come $("#TestHash")
, $(TestHash)
. Entrambi risulteranno uguali. qual è l'utilizzo dell'elemento senza # ??
In effetti, esiste un artefatto legacy in Javascript: gli elementi con un ID popolano automaticamente lo spazio dei nomi globale.
Ecco perché è possibile accedervi direttamente come siete ($(TestHash)
). Tuttavia, è un pezzo incompreso lasciato dai browser legacy, quindi non dovresti fare affidamento su di esso.
Ove possibile, utilizzare sempre la versione $("#myId")
.
che uso sempre con # solo. Ho visto del codice senza selettori. Sono rimasto sorpreso senza alcuna eccezione. Funziona bene. Devo sapere come funziona. Questo è il tema che ho postato qui. – suresh
Yep fair call: cerca di evitarlo. Non penso che verrà abbandonato come funzionalità nei browser in qualsiasi momento - ma causerà problemi quando inizi a modulare il tuo js e cosa no. – Chris
+1 stava per scrivere una risposta in precedenza e collegarmi ad alcune risorse con maggiori informazioni ma è sorprendentemente difficile trovare qualcosa al riguardo ... L'unica cosa che so è che è il capitolo 14.7 in 'Javascript: The Definitive Guide (6th edizione) ' –
entrambi non avranno lo stesso risultato. controllare correttamente. il secondo selettore genererà un errore poiché "TestHash" è usato come variabile. –
Ci dovrebbe essere errore con '$ (TestHash)'. –
$ (TestHash) dovrebbe arrestarsi in modo anomalo, poiché non è stato definito alcun TestHash var. Quindi, è uguale a $ (non definito); –