2013-10-25 17 views
11

abrufen Ich habe versucht, die Browserfensterbreite mit $(window).width(); zu erhalten. Auf IE 10 gibt es die volle Browserbreite zurück, einschließlich der Bildlaufleiste. In Firefox und Chrome geben beide den Wert ohne die Bildlaufleiste zurück.Browserfensterbreite inklusive Bildlaufleiste

Wie kann ich die Browserbreite zusammen mit der Bildlaufleiste zusammen bekommen? Weil ich die erkannte Breite genau wie CSS brauchen muss.

Danke.

+0

wie etwa $ (document) .width() erforderlich ist; –

+0

'Ich brauche die erkannte Breite genau wie CSS.Welche CSS-Eigenschaft sprechen wir? – Adassko

+0

Ich weiß nicht, welche CSS-Eigenschaft. Aber es ist Bootstrap responsive CSS. – user1995781

Antwort

16

Dies wird die volle Fensterbreite erhalten:

window.outerWidth 

HINWEIS: jQuery outer() funktioniert nicht auf $ (Fenster)

+0

Danke. Aber es ist immer noch dasselbe. Wie erkennt man die Scrollbar-Breite? – user1995781

+0

Entschuldigung, ich musste wieder bearbeiten ... ich war zu dumm, zuerst daran zu denken. – infidel

+0

Es ist der gleiche Wert wie zuvor. – user1995781

25

Die erste Antwort war in der Nähe, aber bei näherer Betrachtung es ist ein bisschen komplizierter. Die body.clientWidth ist die Breite ohne die Bildlaufleisten. Die window.outerWidth ist die Breite einschließlich der Bildlaufleisten und anderer Fensterelemente wie der Fensterrahmen. Die window.innerWidth ist die tatsächliche Breite des Fensters, einschließlich Bildlaufleisten, jedoch ohne den Fensterrahmen.

enter image description here

+0

Dies sollte die richtige markierte Antwort sein, sogar drei Jahre später. – runfaj

5

window.innerWidth scheint die richtige Antwort zu sein, wenn für Responsive Design

+0

genau was ich brauche. Laut OPs Kommentar in der Frage hätte dies die akzeptierte Antwort sein müssen. – Gogol