Получить ширину окна браузера, включая полосу прокрутки

Я попытался получить ширину окна браузера с $(window).width();. В IE 10 он возвращает полную ширину браузера, включает полосу прокрутки. Однако в Firefox и Chrome оба значения возвращаются без полосы прокрутки.

Как увеличить ширину браузера с помощью полосы прокрутки? Потому что мне нужно, чтобы обнаруженная ширина была точно такой же, как CSS.

Спасибо.

Ответ 1

Это получит полную ширину окна:

 window.outerWidth

ПРИМЕЧАНИЕ: jQuery outerWidth() не работает на $(window)

Ответ 2

Первый ответ был близок, но при дальнейшем осмотре он немного сложнее. body.clientWidth - ширина, исключая полосы прокрутки. window.outerWidth - это ширина, включая полосы прокрутки и другие элементы окна, такие как граница окна. window.innerWidth - фактическая ширина окна, включая полосы прокрутки, но не включая границу окна.

enter image description here

Ответ 3

window.innerWidth представляется правильным ответом, когда это необходимо для гибкого дизайна

Ответ 4

window.innerWidth даст ширину HTML и полосу прокрутки. Это значение используется для точек останова ширины устройства при использовании медиазапросов в CSS. По сути, window.innerWidth равен вычисленной единице CSS 100vw. Однако window.outerWidth даст вам ширину всего окна.

Например, если у вас Chrome Dev Tools открытого внутри браузера, window.outerWidth будет шириной панели веб - страница + свитка + Chrome Dev Tools инспектор. В то время как window.innerWidth возвращает ширину только веб-страницы + полоса прокрутки.