Wie wählt man DOM-Elemente in Javascript aus? Wie zum Beispiel:
%Vor% Wie wähle ich nun h1
? Dies ist nur ein Teil einer größeren Seite, daher kann getElementsByTagName()
nicht verwendet werden, da andere möglicherweise ausgewählt werden. Da es später noch weitere h1
's im Dokument geben kann, kann ich den Index (body's) nicht oben anhängen.
Gibt es eine einfache Möglichkeit zu wählen, sagen wir <h1>
Tag, das unter dem Klassennamen von desleft
ist?
Ich kann jQuery oder andere Bibliotheken nicht verwenden.
Wäre eine Funktion, mit der Sie beginnen können, und dann können Sie nach den DOM-Elementen filtern, die die Klasse haben.
%Vor% Die Funktion .indexOf
gibt -1
zurück, wenn die Nadel nicht im Heuhaufen gefunden wird.
Jetzt lesen Sie Ihre Frage erneut, warum geben Sie nicht einfach die IDs Ihres h1?
DOM-Traversal ist eines der grassierenden Probleme von JavaScript (geben Sie jQuery ein).
Eine einfache getElementById()
würde Ihnen Kopfschmerzen ersparen, und ids auf all Ihren h1s wären am Ende viel sauberer als zu versuchen, einen Algorithmus zu formulieren, um sie auf andere Weise auszuwählen.
Sie können dies verwenden, um zu Ihrem H1 zu gelangen:
%Vor%w3.org hat jetzt Selektoren (http://www.w3.org/TR/selectors-api/#examples). Hier sind zwei verschiedene Möglichkeiten, die für mich in Chrome funktionierten. Möglicherweise möchten Sie die Funktion querySelectorAll verwenden, die eine Liste zurückgibt.
%Vor%Wie wählt man DOM-Elemente in Javascript aus? Wie zum Beispiel:
%Vor% Wie wähle ich nun querySelectorAll
? Dies ist nur ein Teil einer größeren Seite, daher kann querySelector
nicht verwendet werden, da andere möglicherweise ausgewählt werden. Da es später noch weitere #single-header-id
's im Dokument geben kann, kann ich den Index (body's) nicht oben anhängen.
Gibt es eine einfache Möglichkeit zu wählen, sagen wir %code% Tag, das unter dem Klassennamen von %code% ist? Ich kann jQuery oder andere Bibliotheken nicht verwenden.
Sie können %code% verwenden:
%Vor%Dies wird eine NodeList zurückgeben.
Verwenden Sie %code% , um das erste gefundene Element zurückzugeben:
%Vor%Wird normalerweise mit einem ID-Selektor %code% verwendet.
w3.org hat jetzt Selektoren (http://www.w3.org/TR/selectors-api/#examples). Hier sind zwei verschiedene Möglichkeiten, die für mich in Chrome funktionierten. Möglicherweise möchten Sie die Funktion querySelectorAll verwenden, die eine Liste zurückgibt.
%Vor%Wäre eine Funktion, mit der Sie beginnen können, und dann können Sie nach den DOM-Elementen filtern, die die Klasse haben.
%Vor%Die Funktion %code% gibt %code% zurück, wenn die Nadel nicht im Heuhaufen gefunden wird.
Jetzt lesen Sie Ihre Frage erneut, warum geben Sie nicht einfach die IDs Ihres h1?
DOM-Traversal ist eines der grassierenden Probleme von JavaScript (geben Sie jQuery ein).
Eine einfache %code% würde Ihnen Kopfschmerzen ersparen, und ids auf all Ihren h1s wären am Ende viel sauberer als zu versuchen, einen Algorithmus zu formulieren, um sie auf andere Weise auszuwählen.
Wenn Sie ein %code% vor das erste Element der Klasse %code% auswählen möchten, können Sie dies immer tun:
%Vor%Beispiel: Ссылка
%code% muss wegen des leeren Textknotens zwischen den beiden zweimal aufgerufen werden. Aus diesem Grund ist die Verwendung von Bibliotheken für diesen Zweck der beste Weg.
Sie können dies verwenden, um zu Ihrem H1 zu gelangen:
%Vor% Wenn Sie ein h1
vor das erste Element der Klasse desleft
auswählen möchten, können Sie dies immer tun:
Beispiel: Ссылка
previousSibling
muss wegen des leeren Textknotens zwischen den beiden zweimal aufgerufen werden. Aus diesem Grund ist die Verwendung von Bibliotheken für diesen Zweck der beste Weg.
Tags und Links javascript dom selector traversal