Как узнать размер окна браузера


Как получить размеры экрана, окна и веб-страницы в JavaScript / Хабр

Доброго времени суток, друзья!

Представляю Вашему вниманию перевод небольшой заметки «How to Get the Screen, Window, and Web Page Sizes in JavaScript» автора Dmitri Pavlutin.

Для определения ориентации окна браузера (ландшафтной или портретной) можно сравнить его ширину и высоту.

Однако во всевозможных доступных размерах легко запутаться: существуют размеры экрана, окна, веб-страницы и т.д.

Что означают эти размеры и, главное, как их получить? Именно об этом я и собираюсь рассказать.

1. Экран


1.1. Размер экрана

Размер экрана — это ширина и высота всего экрана: монитора или мобильного дисплея.

Получить информацию о размере экрана можно с помощью свойства screen объекта window:

const screenWidth = window.screen.width const screenHeight = window.screen.height 

1.2. Доступный размер экрана

Доступный размер экрана — это ширина и высота активного экрана без панели инструментов операционной системы.

Для получения доступного размера экрана снова обращаемся к window.screen:

const availableScreenWidth = window.screen.availWidth const availableScreenHeight = window.screen.availHeight 

2. Окно


2.1. Размер внешнего окна (или внешний размер окна)

Размер внешнего окна — это ширина и высота текущего окна браузера, включая адресную строку, панель вкладок и другие панели браузера.

Получить информацию о размере внешнего окна можно с помощью свойств outerWidth и outerHeight объекта window:

const windowOuterWidth = window.outerWidth const windowOuterHeight = window.outerHeight 

2.2. Внутренний размер окна (или размер внутреннего окна)

Внутренний размер окна — это ширина и высота области просмотра (вьюпорта).

Объект window предоставляет свойства innerWidth и innerHeight:

const windowInnerWidth = window.innerWidth const windowInnerHeight = window.innerHeight 

Если мы хотим получить внутренний размер окна без полос прокрутки, то делаем следующее:
const windowInnerWidth = document.documentElement.clientWidth const windowInnerHeight = document.documentElement.clientHeight 

3. Размер веб-страницы


Размер веб-страницы — это ширина и высота отображаемого содержимого (отрендеренного контента).

Для получения размера веб-страницы используйте следующее (включает в себя внутренние отступы страницы, но не включает границы, внешние отступы и полосы прокрутки):

const pageWidth = document.documentElement.scrollWidth const pageHeight = document.documentElement.scrollHeight 

Если pageHeight больше, чем внутренняя высота окна, значит, присутствует вертикальная полоса прокрутки.

4. Заключение


Надеюсь, теперь Вы понимаете, как получать различные размеры.

Размер экрана — это размер монитора (или дисплея), а доступный размер экрана — это размер экрана без панелей инструментов ОС.

Внешний размер окна — это размер активного окна браузера (включая поисковую строку, панель вкладок, открытые боковые панели и проч.), а внутренний размер окна — это размер области просмотра.

Наконец, размер веб-страницы — это размер контента.

Благодарю за внимание, друзья!

javascript - Получить размер экрана, текущей веб-страницы и окна браузера

Переполнение стека
  1. Около
  2. Товары
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
.

Установить размер внутреннего окна браузера для скриншотов в Chrome

Мне нужно установить размер внутреннего окна браузера, чтобы я мог делать снимки экрана, которые помещаются в определенную область и имеют одинаковые размеры. После небольшого поиска и экспериментов я обнаружил, что вы можете отлично справиться с этим с помощью инструментов разработчика Chrome. Это удобно, потому что Инструменты разработчика являются стандартной частью браузера. Никаких надстроек не требуется.

Вот как установить размеры внутреннего окна (области просмотра) в Chrome.

Вкратце

  1. Откройте Инструменты разработчика Chrome.
  2. Щелкните параметр Toggle Device Mode в левом верхнем углу раздела инструментов разработчика.
  3. Выберите Responsive в раскрывающемся меню в верхней части экрана.
  4. Измените размеры, которые также находятся в верхней части экрана, рядом с раскрывающимся списком.

Более длинная версия

На скриншотах показан Chrome версии 49.0.2623.110 m.

1.Откройте Инструменты разработчика Chrome.

Нажмите Option + Command + J на ​​Mac или Ctrl + Shift + J в Windows или откройте гамбургер-меню Chrome и выберите Дополнительные инструменты > Инструменты разработчика :

В вашем браузере откроется панель инструментов разработчика Chrome. По умолчанию он открывается либо справа, либо внизу окна браузера. Он также может открываться как отдельное окно. У меня есть набор, который открывается внизу.

2. Щелкните параметр Toggle Device Mode в верхнем левом углу раздела инструментов разработчика.

Значок «Переключить режим устройства» выглядит как мобильное устройство, прижимающееся к большему экрану.

3. Выберите Responsive в раскрывающемся меню в верхней части экрана.

Когда вы находитесь в режиме переключения устройства, в верхней части окна появляются раскрывающееся меню и редактируемые размеры экрана. Убедитесь, что в раскрывающемся меню установлено значение Отзывчивый .

4. Измените размеры, которые также находятся в верхней части экрана.

Размеры доступны для редактирования, если в раскрывающемся списке установлено значение «Адаптивный». Вы также можете установить относительный размер (100% на скриншоте).

Вот и все. Удачного скриншота!

Нравится:

Нравится Загрузка ...

Связанные

.

asp.net - Как определить размер окна браузера на стороне сервера C #

Переполнение стека
  1. Около
  2. Товары
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
  4. Талант Нанимайте технических специалистов и создавайте свой бренд работодателя
.

macos - Использование API доступности для определения размера и источника окна браузера в подключаемом модуле NPAPI

Переполнение стека
  1. Около
  2. Товары
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
.

Смотрите также