Jeśli mój html jest tak jak poniżejCo jest necessasity z # w jQuery
<div id="TestHash"> </div>
mogę uzyskać do niego dostęp, jak $("#TestHash")
$(TestHash)
. Oba będą takie same. jakie jest użycie elementu bez # ??
Jeśli mój html jest tak jak poniżejCo jest necessasity z # w jQuery
<div id="TestHash"> </div>
mogę uzyskać do niego dostęp, jak $("#TestHash")
$(TestHash)
. Oba będą takie same. jakie jest użycie elementu bez # ??
W rzeczywistości istnieje artefakt w języku Javascript - elementy o identyfikatorze automatycznie wypełniają globalny obszar nazw.
Dlatego możesz uzyskać do niego bezpośredni dostęp, tak jak jesteś ($(TestHash)
). Jest to jednak niezrozumiany fragment pozostałych ze starszych przeglądarek, więc nie powinieneś na nim liczyć.
Tam, gdzie to możliwe, należy zawsze korzystać z wersji $("#myId")
.
Zawsze używam tylko z #. Widziałem jakiś kod bez selektorów. Byłem zaskoczony bez wyjątku. Działa dobrze. Muszę wiedzieć, jak to działa. To jest temat, który tutaj zamieściłem. – suresh
Taka rozmowa targowa - staraj się jej unikać. Nie sądzę, że w najbliższym czasie zostanie on odrzucony jako funkcja w przeglądarkach - ale spowoduje to problemy, gdy zaczniesz modularyzować swoje js, a co nie. – Chris
+1 już miał napisać odpowiedź i link do jakiegoś zasobu z dodatkowymi informacjami, ale zaskakująco trudno jest znaleźć cokolwiek na ten temat ... Jedyne co wiem to to, że jest rozdział 14.7 w 'Javascript: The Definitive Guide (6th edycja) " –
oba nie będą takie same. sprawdź poprawnie. drugi selektor rzuci błąd, ponieważ 'TestHash' jest używana jako zmienna. –
Powinien pojawić się błąd z '$ (TestHash)'. –
$ (TestHash) powinno się zawiesić, ponieważ nie ma zdefiniowanego var TestHash. Jest to równe $ (niezdefiniowane); –