Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

Fensterrechteck festlegen

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Der Set Window Rect Befehl der WebDriver API ändert die Größe und Position des Betriebssystemfensters, das dem aktuellen window zugeordnet ist. Der Befehl fungiert als Setter von Get Window Rect, dessen Rückgabeobjekt direkt als Nutzlast für diesen Befehl verwendet werden kann.

Bestimmte Gruppen von Geräten unterstützen nicht das Festlegen der Fensterabmessungen oder dessen Position. Bei diesen Konfigurationen wird der Befehl einen unsupported operating Fehler zurückgeben. Um Situationen zu vermeiden, in denen dies zu einem Fehler führen könnte, ist es möglich, den Befehl bedingt aufzurufen, je nachdem, ob die setWindowRect Fähigkeit für die Sitzung auf wahr gesetzt ist.

Das Festlegen des Fensterrechtecks benötigt x, y, width und height als Eingaben. Alle Felder sind optional, z.B. kann der Befehl mit einem leeren Objekt aufgerufen werden, in welchem Fall es als No-Op (wird nichts tun) fungiert. Um die Position festzulegen, sind sowohl x als auch y erforderlich, und entsprechend sind sowohl width als auch height erforderlich, um die Abmessungen des Fensters zu ändern.

Beim Festlegen der Breite oder Höhe gibt es keine Garantie, dass die resultierende Fenstergröße genau der angeforderten Größe entspricht. Der Treiber ist dafür verantwortlich, Werte zu klemmen, die größer als die physischen Bildschirmabmessungen sind oder kleiner als die Mindestgröße des Fensters. Einige Treiber können auch andere Einschränkungen haben, wie z.B. die Unfähigkeit, in Ein-Pixel-Schritten zu skalieren. Aus diesem Grund stimmen die zurückgegebenen width und height möglicherweise nicht exakt mit Window.outerWidth und Window.outerHeight überein.

Das Festlegen der Fensterposition ist ähnlich wie der Aufruf von Window.moveTo(x, y), unterscheidet sich jedoch dadurch, dass die Sicherheitsbeschränkungen im Zusammenhang mit der Fenstermanipulation umgangen werden.

Der Befehl zum Festlegen des Fensterrechtecks ist blockierend.

Syntax

Methode URI-Vorlage
POST /session/{session id}/window/rect

URL-Parameter

session id

Bezeichner der Sitzung.

Nutzlast

Die Eingabe ist ein WindowRect Objekt:

x

Horizontale Position des window, die gleichwertig mit Window.screenX ist. Muss eine Zahl im Bereich von −(2^31) bis 2^31 − 1, null oder undefined sein.

y

Vertikale Position des window, die gleichwertig mit Window.screenY ist. Muss eine Zahl im Bereich von −(2^31) bis 2^31 − 1, null oder undefined sein.

width

Äußere Breite des window, die gleichwertig mit Window.outerWidth ist. Muss eine Zahl im Bereich von 0 bis 2^31 − 1, null oder undefined sein.

height

Äußere Höhe des window, die gleichwertig mit Window.outerHeight ist. Muss eine Zahl im Bereich von 0 bis 2^31 − 1, null oder undefined sein.

Antwort

Die Antwort-Nutzlast ist ein WindowRect:

x

Horizontale Position des Betriebssystemfensters, das mit window assoziiert ist, gleichwertig mit Window.screenX.

y

Vertikale Position des Betriebssystemfensters, das mit window assoziiert ist, gleichwertig mit Window.screenY.

width

Breite der äußeren Umrandungen des Betriebssystemfensters, das mit window assoziiert ist, gleichwertig mit Window.outerWidth.

height

Höhe der äußeren Umrandungen des Betriebssystemfensters, das mit window assoziiert ist, gleichwertig mit Window.outerHeight.

Fehler

Ungültiges Argument

Wenn eines der Felder im WindowRect Nutzlastobjekt nicht den Typ- oder Grenzbeschränkungen entspricht oder wenn nur eines der x/y oder width/height Felder angegeben ist.

Ungültige Sitzungs-ID

Sitzung existiert nicht.

Kein solches Fenster

Wenn das window geschlossen wurde.

Unerwartetes geöffnetes Warnfenster

Eine Benutzeraufforderung, wie window.alert, blockiert die Ausführung des Befehls, bis diese behandelt wird.

Nicht unterstützte Operation

Wenn der Treiber das Ändern der Fenstergröße oder -position nicht unterstützt. Dies ist normalerweise bei mobilen Geräten der Fall, bei denen der Browser eine feste Größe hat und nicht auf dem Bildschirm verschoben werden kann.

Sie können die setWindowRect Fähigkeit überprüfen, um festzustellen, ob das Gerät diesen Befehl unterstützt.

Spezifikationen

Specification
WebDriver
# set-window-rect

Browser-Kompatibilität

Siehe auch