DIV animiert vergrößern
Luke
- javascript
0 Martin Hölter0 Luke
Ich will einen Effekt ähnlich wie auf http://moofx.mad4milk.net/ erstellen, ein DIV soll bei klick auf einen Button 'aufscrollen'. Mein Versuch bisher:
function resizeDivTo(div_id, div_height)
{
var div = document.getElementById(div_id);
if(div.offsetHeight < div_height)
{
var h = div.offsetHeight + 1;
div.style.height = h+'px';
window.setTimeout("resizeDivTo(div_id, div_height);", 1000);
}
}
Vergrößert das DIV das vorher die Höhe 0 hat auf 3px; - einmalig. Versteh ich nicht. Wie könnte man's richtig machen?
Hi!
Der Fehler liegt höchstwahrscheinlich in der Zeile:
window.setTimeout("resizeDivTo(div_id, div_height);", 1000);
Zitat SELFHTML:
An setTimeout() gekoppelte Funktionsaufrufe können auch Parameter enthalten. Berücksichtigen Sie dabei, dass lokale Variable dann nicht mehr zur Verfügung stehen. Eine Übergabe der Werte mittels Zeichenkettenverknüpfung ist jedoch jederzeit möglich.
Also window.setTimeout("resizeDivTo(" + div_id +"," + div_height + ");", 1000);
Gruß aus Iserlohn
Martin
Hi!
Der Fehler liegt höchstwahrscheinlich in der Zeile:
window.setTimeout("resizeDivTo(div_id, div_height);", 1000);
Richtig das war's! Noch ein kleiner Bugfix, Hochkommas um div_id, weil's n String ist; So geht's:
window.setTimeout("resizeDivTo('" + div_id +"'," + div_height + ");", 20);
Vielen Dank!!