Многоэкранное происхождение
API управления окнами Window Management API вводит понятие многоэкранного происхождения — это координаты (0,0) виртуальной схемы расположения экранов операционной системы (ОС), относительно которой позиционируются все доступные экраны и окна. Многоэкранное происхождение по умолчанию находится в левом верхнем углу основного экрана ОС, хотя спецификация допускает произвольную точку внутри виртуальной схемы расположения экранов.
Основной экран обычно может быть указан пользователем через настройки ОС и, как правило, содержит элементы пользовательского интерфейса ОС, такие как панель задач/панель значков.
Примечание: Положительные координаты соответствуют правому и нижнему направлению на схеме расположения экрана, а отрицательные — левому и верхнему.
Воздействие на существующие функции веб-платформы
Многоэкранное происхождение актуально для следующих API:
- Значения
ScreenDetailed.left,ScreenDetailed.top,ScreenDetailed.availLeftиScreenDetailed.availTopдля каждого доступного экрана сообщаются относительно многоэкранного происхождения. - Значения
Window.screenLeft,Window.screenTop,Window.screenX,Window.screenYдля каждого окна сообщаются относительно многоэкранного происхождения. - При использовании
Window.moveTo()иWindow.open(), окна позиционируются относительно многоэкранного происхождения.
Примечание: Не все браузеры официально поддерживают многоэкранное происхождение, но некоторые имеют свои собственные нестандартные реализации. Рекомендуется проверять информацию о совместимости браузеров для указанных выше функций, чтобы понять поведение в каждом браузере.
Визуальные примеры
Предположим, у нас есть внешний монитор с разрешением 1920 x 1080, установленный как основной, и внутренний ноутбучный дисплей с разрешением 1440 x 900, установленный как дополнительный монитор. Предположим также, что элементы пользовательского интерфейса ОС занимают 25 пикселей в верхней части экрана и отображаются только на основном экране.
Если дополнительный экран был расположен непосредственно справа от основного экрана, верхние края экранов выровнены:
- Значения основного экрана
left/topбудут (0,0), в то время как его значенияavailLeft/availTopбудут (0,25) — добавляется толщина элементов пользовательского интерфейса ОС. - Значения дополнительного экрана
left/topбудут (1920,0), в то время как его значенияavailLeft/availTopтакже будут (1920,0) — элементы пользовательского интерфейса ОС не отображаются на дополнительном экране.
Однако, если дополнительный экран был расположен непосредственно слева от основного экрана, верхние края экранов выровнены:
- Значения основного экрана
left/topпо-прежнему будут (0,0), а значенияavailLeft/availTopбудут (0,25). - Значения дополнительного экрана
left/topбудут (-1440,0), в то время как его значенияavailLeft/availTopтакже будут (-1440,0).
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Window_Management_API/Multi-screen_origin