Ich habe versucht, eine verständliche Antwort darauf zu finden, aber aufgegeben.Berechne die Gesamtbreite von Kindern mit jQuery
Um dymnamic Inhalt (wie Blog-Posts und Bilder) in einer horizontalen Website (wie auf thehorizontalway.com) haben Sie eine feste Breite für den Körper in pixles setzen müssen, nicht wahr? Da Sie floated Elemente darin verwenden, die andernfalls die Seite brechen und umhüllen würden, abhängig von der Breite des Browsers.
BEARBEITEN! Dieser spezifische Wert kann berechnet werden mit jQuery, danke dafür :) In diesem Beispiel wird ein zusätzlicher Wert zur Gesamtgröße hinzugefügt, der für Inhalt vor den Floated-Elementen verwendet werden kann. Jetzt bekommt der Körper eine dynamische Breite!
Mein erster Gedanke war, haben jQuery diese Berechnung für uns: ('EACH BEITRÄGE WIDTH' * 'Anzahl der Beiträge') + 250 (für den zusätzlichen Inhalt)
HTML-Code
<body style="width: ;"> <!-- Here we want a DYNAMIC value -->
<div id="container">
<div id="menu"></div> <!-- Example of extra content before the floats -->
<div class="post">Lorem</div>
<div class="post">Lorem</div>
<div class="post">Lorem</div> <!-- Floated elements that we want the sizes of -->
<div class="post">Lorem</div>
</div>
...
<!-- So if these posts were 300px exept the last that was 500px wide, then the BODY WIDTH should be (300+300+300+500) + 250 [#menu] = 1650px -->
Das Ergebnis und Antwort von Alconja
$(document).ready(function() {
var width = 0;
$('.post').each(function() {
width += $(this).outerWidth(true);
});
$('body').css('width', width + 250);
});
Thanks so much!
Ehrfürchtig, das war genau das, was ich meinte. Ich werde die Frage später bearbeiten, damit es klarer wird, worüber ich gesprochen habe. Wie du gesagt hast, der Code hatte ich nur die erste .post und berechnet den Rest durch Multiplikation mit .size() - das macht es so viel einfacher, eine horizontale Scroll-Seite zu machen, die Breite des Körpers dynamisch pro Seite :) Just braucht etwas Noscript Super-Body-Breite hinzugefügt und es ist fertig. – elundmark
+1 Danke, sparte mir Zeit. – 472084
D: WAS !! DIESE EXISTEN!?!?! Ich habe outerWidth() seit Monaten neu erstellt !!! –