Page 2 of 2

Re: jQuery-Script abhängig vom Viewport einbinden

Posted: Sun Feb 14, 2016 2:38 pm
by cmb
lck wrote:Sinn und Zweck der Sache ist eigentlich, unnötige Scripte ab einem bestimmten Viewport gar nicht einzubinden um die Ladegeschwindigkeit so niedrig wie möglich zu halten.
Allgemein bin ich schon seit längerem am Überlegen, ob wir bei XH Unterstützung für AMD intergrieren sollen. Das würde solche Szenarien wohl etwas vereinfachen.

Re: jQuery-Script abhängig vom Viewport einbinden

Posted: Mon Feb 12, 2018 5:07 pm
by frase
Hi,
der Thread ist ja schon älter.
Ich bin neulich auch auf dieses Problem gestoßen, dass ich $(window).innerWidth() brauchte und immer wieder falsche Ergebnisse bekam.
Der Witz ist, dass man die Scrollbars berechnen muss.
Dazu muss man allerdings deren Breite (Höhe) erst herausfinden - die sind je nach System verschieden.
Gefunden habe ich ein Script zu Lösung:
https://alexmansfield.com/javascript/cs ... scrollbars

Bei mir funktioniert das. (der Code im 2. Codefenster)
Die Frage nach der Fensterbreite muss dann eben lauten $(window).innerWidth() + scrollbar_width()
Für Größenänderungen muss das Ganze in eine Funktion gepackt werden, die eben dann nochmals durchlaufen wird.

Code: Select all

$(window).resize(function () {
    dieFunktion();
});
P.S. = jQuery

Re: jQuery-Script abhängig vom Viewport einbinden

Posted: Mon Feb 12, 2018 6:16 pm
by cmb
frase wrote:
Mon Feb 12, 2018 5:07 pm
Ich bin neulich auch auf dieses Problem gestoßen, dass ich $(window).innerWidth() brauchte und immer wieder falsche Ergebnisse bekam.
Der Witz ist, dass man die Scrollbars berechnen muss.
Hm, muss man? Tut es nicht auch document.documentElement.clientWidth?

Re: jQuery-Script abhängig vom Viewport einbinden

Posted: Tue Feb 13, 2018 7:22 am
by frase
https://developer.mozilla.org/de/docs/W ... lientWidth
The Element.clientWidth property is zero for elements with no CSS or inline layout boxes, otherwise it's the inner width of an element in pixels. It includes padding but not the vertical scrollbar (if present, if rendered), border or margin.
Lass mal. Bin froh, dass es bei mir funzt.