Einzelnen Beitrag anzeigen
  #2 (permalink)  
Alt 16.08.2010, 10:18
kolarsky kolarsky ist offline
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 26.05.2010
Beiträge: 5
kolarsky befindet sich auf einem aufstrebenden Ast
Lächeln Lösung gefunden mit ein wenig Hilfe...

Also:
nachdem ich leider mit dem Script keinen Erfolg hatte, hab ich mir noch ein wenig Unterstützung geholt. Nachdem wir dann festgestellt hatten, dass ich im HEAD bereits jQuery eingebunden hatte, haben wir kurzerhand nach den Möglichkeiten geschaut, über die JQ-Bibliotheken dem DIV die Breite zuzuweisen. Und das hat dann auch prima geklappt.

Der Code schaut final so aus:

...
<script type="text/javascript">
function AutoSize() {
var container = document.getElementById('content');
var elements = container.getElementsByTagName('div');
var length = 0;
for (var elementIndex = 0; elementIndex < elements.length; elementIndex++) {
var element = elements[elementIndex];
length = length + (element.offsetWidth + 2);
}
$(container).css('width',length);
}
</script>
</head>
<body onload="AutoSize()">
...

In der zweiten Scriptzeile muss dann noch 'content' durch den eigenen DIV-ID ersetzt werden und bei der Berechnung von length musste ich ein +2 einbauen, da meine DIVs links und rechts einen Margin von 1px haben.

Dann gabs noch das Problem, dass die Seite erstmal alle DIVs untereinander lädt und am Ende alles auf eine Zeile schubst, da ja erst dann quasi die finale Breite feststeht.
Hier gabs dann auch noch n kleines Workaround: Im CSS dem DIV 'content' eine seeeehr große Breite geben, die dann nach dem Laden auf die richtige Breite eingestellt wird.

Hoffe, damit konnte ich ein wenig zur Community beitragen.

Beste Grüße
Mit Zitat antworten
Sponsored Links