Die Klasse DomNode

Die Klasse DomNode ist von Node abgeleitet und befindet sich ebenfalls im Package de.qfs.apps.qftest.client.web.dom. Zusätzlich zu den in der Node Klasse definierten Methoden, die oben beschrieben wurden, bietet DomNode folgendes an:

 
 
Object callJS(String code)
Führt JavaScript Code im Context des Dokuments dieses Knotens aus. Dies funktioniert häufig auch dann, wenn ein Aufruf von eval() durch eine Sicherheitsrichtlinie für den Inhalt (CSP) unterbunden wird.
Parameter
codeDer Code, der in einer Funktion ausgeführt wird. _qf_node ist dabei das Objekt, worüber auf das HTML-Element zugegriffen werden kann.
RückgabewertWas immer der Code explizit mit return zurückliefert, konvertiert in einen passenden Objekttyp. Sogar die Rückgabe von DOM-Knoten, Frames oder Dokumenten funktioniert.
 
Object evalJS(String script)
Führt JavaScript Code mit einem window.eval()-Aufruf im Kontext des Dokuments dieses Knotens aus. In den meisten Fällen ist die Methode callJS zu bevorzugen, da der Aufruf von eval() je nach Dokument durch eine Sicherheitsrichtlinie für den Inhalt (CSP) unterbunden sein kann.
Parameter
scriptDas auszuführende Skript. _qf_node ist dabei das Objekt, worüber auf das HTML-Element zugegriffen werden kann.
RückgabewertWas immer das Skript zurückliefert, konvertiert in einen passenden Objekttyp. Sogar die Rückgabe von DOM-Knoten, Frames oder Dokumenten funktioniert.
 
DomNode[] getAllByCSS(String css)
Liefert alle Knoten, die mittels CSS-Selector gefunden werden.
Parameter
cssDer CSS-Selector ab diesem Knoten.
RückgabewertEin Array der gefundenen Knoten oder null.
 
DomNode[] getAllByXPath(String xpath)
Liefert alle Knoten, die mittels XPath gefunden werden.
Parameter
xpathDer XPath ab diesem Knoten.
RückgabewertEin Array der gefundenen Knoten oder null.
 
DomNode getByCSS(String css)
Liefert einen Knoten, der mittels CSS-Selector gefunden wird.
Parameter
cssDer CSS-Selector ab diesem Knoten.
RückgabewertDer gefundene Knoten oder null.
 
DomNode getByXPath(String xpath)
Liefert einen Knoten, der mittels XPath gefunden wird.
Parameter
xpathDer XPath ab diesem Knoten.
RückgabewertDer gefundene Knoten oder null.
 
Node[] getChildrenByTagName(String tagName)
Liefert alle direkten Kinder des Knotens mit einem vorgegebenen Tagnamen.
Parameter
tagNameDer zu suchende Tagname.
Rückgabewert Ein Array mit den Kind-Knoten mit dem vorgegebenen Tagnamen. Werden keine gefunden, wird ein leeres Array zurückgeliefert.
 
String getId()
Liefert die gecachte Version der ID des Knotens. Diese Version wurde eventuell durch einen IdResolver modifiziert (vgl. Abschnitt 52.1.17). Das originale, unverfälschte Attribut 'ID' kann mittels getAttribute("id") bestimmt werden.
RückgabewertDie gecachte ID des Knotens.
 
int[] getLocationOnScreen()
Liefert Position und Größe des Knotens relativ zum Desktop.
RückgabewertDie Geometrie des Knotens in der Form [x, y, width, height].
 
boolean hasCSSClass(String cl)
Prüft, ob der Knoten eine angegebene CSS Klasse besitzt.
Parameter
clDer zu prüfende CSS-Klassenname.
RückgabewertTrue, wenn der Knoten die Klasse besitzt, sonst false.
 
boolean hasFocus()
Prüft, ob der Knoten den Tastatur-Fokus besitzt.
Rückgabewert True falls der Knoten den Tastatur-Fokus besitzt.
 
boolean isShowing()
Prüft, ob der Knoten aktuell sichtbar ist oder durch Scrollen sichtbar gemacht werden kann.
Rückgabewert True falls der Knoten sichtbar ist, false falls er nicht sichtbar ist oder sichtbar gescrollt werden kann.
 
void requestFocus()
Fordert den Tastatur-Fokus für den Knoten an. Ob der Knoten den Tastatur-Fokus tatsächlich erhält, hängt allerdings von Browser und Betriebssystem ab.
 
void scrollVisible()
Versucht die Webseite oder einen Frame so zu scrollen, dass der Knoten komplett sichtbar ist. Ob und wie dies geschieht, hängt allerdings von Browser und Betriebssystem ab.
 
void setAttribute(String name, String value)
Setzt ein Attribut des Knotens.
Parameter
nameDer Name des Attributs.
valueDer zu setzende Wert.
 
void toJS(String name)
Setzt eine JavaScript Variable im Kontext des Dokuments dieses Knotens auf diesen Knoten.
Parameter
nameDer Name der zu setzenden Variable.