Fensterrechteck festlegen
Eingeschränkt verfügbar
Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.
Want more browser support for this feature? Tell us why.
Der Befehl Set Window Rect der WebDriver-API command ändert die Größe und Position des Betriebssystemfensters, das mit dem aktuellen window verknüpft ist. Der Befehl fungiert als Setter von Get Window Rect, dessen Rückgabeobjekt Sie direkt als Payload dieses Befehls übergeben können.
Bestimmte Gerätegruppen unterstützen das Festlegen der Fensterabmessungen oder seiner Position nicht. In diesen Konfigurationen gibt der Befehl einen Fehler unsupported operation zurück. Um Situationen zu vermeiden, in denen dieser Aufruf einen Fehler verursachen könnte, können Sie ihn bedingt ausführen, je nachdem, ob die Capability setWindowRect für die Sitzung auf „true“ gesetzt ist.
Das Festlegen des Fensterrechtecks akzeptiert x, y, width und height als Eingabe. Alle Felder sind optional; beispielsweise kann der Befehl mit einem leeren Objekt aufgerufen werden und wirkt in diesem Fall als No-Op. Zum Festlegen der Position sind sowohl x als auch y erforderlich; entsprechend sind sowohl width als auch height erforderlich, um die Fensterabmessungen zu ändern.
Beim Festlegen der Breite oder Höhe wird nicht garantiert, dass die resultierende Fenstergröße exakt der angeforderten Größe entspricht. Der Driver soll Werte begrenzen, die größer als die physischen Bildschirmabmessungen oder kleiner als die minimale Fenstergröße sind. Einige Driver können außerdem weitere Einschränkungen haben, etwa dass sie die Größe nicht in Ein-Pixel-Schritten ändern können. Daher stimmen die zurückgegebenen Werte für width und height möglicherweise nicht genau mit Window.outerWidth und Window.outerHeight überein.
Das Festlegen der Fensterposition ähnelt dem Aufruf von Window.moveTo(x, y), unterscheidet sich jedoch dadurch, dass Sicherheitsbeschränkungen in Bezug auf Fenstermanipulationen umgangen werden.
Der Befehl Set Window Rect ist blockierend.
Syntax
| Methode | URI-Vorlage |
|---|---|
| POST | /session/{session id}/window/rect |
URL-Parameter
session id-
Kennung der Sitzung.
Payload
Die Eingabe ist ein WindowRect-Objekt:
x-
Horizontale Position des
window, dieWindow.screenXentspricht. Muss eine Zahl im Bereich von −(2^31) bis 2^31 − 1, null oder undefined sein. y-
Vertikale Position des
window, dieWindow.screenYentspricht. Muss eine Zahl im Bereich von −(2^31) bis 2^31 − 1, null oder undefined sein. width-
Äußere Breite des
window, dieWindow.outerWidthentspricht. Muss eine Zahl im Bereich von 0 bis 2^31 − 1, null oder undefined sein. height-
Äußere Höhe des
window, dieWindow.outerHeightentspricht. Muss eine Zahl im Bereich von 0 bis 2^31 − 1, null oder undefined sein.
Antwort
Der Payload der Antwort ist ein WindowRect:
x-
Horizontale Position des Betriebssystemfensters, das mit
windowverknüpft ist; entsprichtWindow.screenX. y-
Vertikale Position des Betriebssystemfensters, das mit
windowverknüpft ist; entsprichtWindow.screenY. width-
Breite der äußeren Begrenzungen des Betriebssystemfensters, das mit
windowverknüpft ist; entsprichtWindow.outerWidth. height-
Höhe der äußeren Begrenzungen des Betriebssystemfensters, das mit
windowverknüpft ist; entsprichtWindow.outerHeight.
Fehler
invalid argument-
Wenn eines der Felder im Payload-Objekt
WindowRectdie Typ- oder Bereichsbeschränkungen nicht erfüllt oder wenn nur eines der Feldpaarex/yoderwidth/heightangegeben ist. invalid session id-
Die Sitzung existiert nicht.
no such window-
Wenn das
windowgeschlossen wurde. unexpected alert open-
Eine Benutzeraufforderung, etwa
window.alert, blockiert die Ausführung des Befehls, bis sie behandelt wurde. unsupported operation-
Wenn der Driver das Ändern der Fenstergröße oder -position nicht unterstützt. Dies ist normalerweise bei Mobilgeräten der Fall, bei denen der Browser feste Abmessungen hat und nicht auf dem Bildschirm verschoben werden kann.
Sie können die Capability
setWindowRectprüfen, um festzustellen, ob das Gerät diesen Befehl unterstützt.
Spezifikationen
| Spezifikation |
|---|
| WebDriver> # set-window-rect> |
Browser-Kompatibilität
Siehe auch
WebWindow-Objekt- Zugehörige Befehle: