Selektor zapytań JavaScript

| | | | |

Dwie metody querySelector i getElementByID umożliwiają pobranie elementu z modelu DOM (dokument) JavaScript Object Model . Jednak każda metoda ma swoje własne przypadki użycia.

W tym przewodniku przyjrzymy się najczęstszemu przypadkowi użycia querySelector i getElementById. Porównujemy również te dwie metody i przedstawiamy podstawowy przykład działania każdej z nich.

Co to jest querySelector?

Metoda JavaScript querySelector() umożliwia pobranie elementu DOM lub strony internetowej za pomocą selektora CSS. Ta metoda zawiera siostrzaną funkcję o nazwie querySelectorAll(), która wybiera wszystkie elementy pasujące do konkretnego selektora DOM.

Te dwie metody są niezwykle wszechstronne. Dzieje się tak, ponieważ składnia selektora CSS pozwala wybrać element ze strony internetowej.

Używając querySelector nie musisz martw się o ograniczenie przez możliwość wybierania elementów tylko dla klasy lub ID , tak jak w przypadku użycia getElementById lub getElementsByClassName. Te metody są szczególnie przydatne, jeśli wybrane elementy są podobne do tych wybranych w arkuszu stylów CSS.

Przyjrzyjmy się metodzie querySelector. Zaczniemy od napisania elementu HTML, który możemy wybrać później w JavaScript:

Zdefiniowaliśmy akapit tekstu z nazwą klasy „dostępność”. Następnie wybieramy ten akapit za pomocą querySelector()

Ten kod wybiera pierwszy element, którego klasa jest równa „dostępności”. Ten "." oznacza, że chcemy wybrać klasę. Gdybyśmy mieli dwa elementy z klasą „dostępność”, moglibyśmy użyć querySelectorAll(), aby pobrać je oba

Co to jest getElementById?

Metoda getElementById() pobiera element na podstawie jego identyfikatora atrybutu, stąd nazwa.

Ta metoda jest bardziej restrykcyjna niż querySelector, ponieważ nie można pobierać elementów na podstawie ich konkretnego identyfikatora.

Użyj tej opcji, jeśli chcesz pobrać pojedynczy element ze strony internetowej. Rzeczywiście, identyfikator HTML musi być unikalny dla konkretnego elementu. Nie możesz użyć karty tożsamości, aby odwołać się do dwóch elementów na stronie internetowej.

Pobierzemy element za pomocą selektora getElementById. Najpierw napiszemy kod HTML, z którego wybierzemy element:

Używamy instrukcji JavaScript do pobrania elementu, którego identyfikator jest równy „komentarze”. To jest element

, w którym zamieszczamy komentarze na naszej stronie internetowej.

Oczywiste podobieństwo między tymi dwiema metodami polega na tym, że dwa elementy wyboru strony internetowej. Robią to na różne sposoby.

Dzięki deklaracji querySelector możesz wybrać element na podstawie selektora CSS. Oznacza to, że możesz wybierać elementy według identyfikatora, klasy lub dowolnego innego typu selektora. Używając metody getElementById, nie możesz wybrać elementu na podstawie jego identyfikatora.

Z reguły powinieneś wybrać selektor, który wykonuje zadanie najlepiej.

Jeśli po prostu musisz wybrać element według identyfikatora lub klasy, możesz użyć odpowiednio getElementById lub getElementsByClassName. Jeśli potrzebujesz użyć bardziej rozbudowanej reguły do wybierania elementów, metoda querySelector jest najlepszą opcją

Zarówno querySelector, jak i getElementById od jakiegoś czasu są częścią JavaScript. , obie te metody są w pełni obsługiwane w nowoczesnych przeglądarkach.

Wnioski

Metoda querySelector umożliwia pobranie elementu za pomocą zapytania wyboru CSS . Metoda getElementById pobiera element według jego DOM ID.

Obie metody mają szeroką obsługę przeglądarek. Powinieneś wybrać opcję querySelector, jeśli chcesz wybrać elementy za pomocą bardziej złożonych reguł, które można łatwo przedstawić za pomocą selektora CSS. Jeśli chcesz wybrać element na podstawie jego identyfikatora, użycie getElementById jest dobrym wyborem.

Teraz, gdy już wiesz, kiedy użyć querySelector i getElementByID spełnione Hods jak profesjonalista!

Shop

Learn programming in R: courses

$

Best Python online courses for 2022

$

Best laptop for Fortnite

$

Best laptop for Excel

$

Best laptop for Solidworks

$

Best laptop for Roblox

$

Best computer for crypto mining

$

Best laptop for Sims 4

$

Latest questions

NUMPYNUMPY

psycopg2: insert multiple rows with one query

12 answers

NUMPYNUMPY

How to convert Nonetype to int or string?

12 answers

NUMPYNUMPY

How to specify multiple return types using type-hints

12 answers

NUMPYNUMPY

Javascript Error: IPython is not defined in JupyterLab

12 answers

News


Wiki

Python OpenCV | cv2.putText () method

numpy.arctan2 () in Python

Python | os.path.realpath () method

Python OpenCV | cv2.circle () method

Python OpenCV cv2.cvtColor () method

Python - Move item to the end of the list

time.perf_counter () function in Python

Check if one list is a subset of another in Python

Python os.path.join () method