Avatar billede snie97 Nybegynder
06. januar 2006 - 11:21 Der er 4 kommentarer

Animer højde på <div>

Hej,

Jeg skal bruge et script der kan formindske en div's højde ved onLoad.

Altså noget i stil med onload="rulop(mydiv)".

Funktionen skal gøre det så det er animeret, altså noget med -25 pixels i <div>'ens højde pr. sekund.

Er der nogen der kan hjælpe med det?
Avatar billede snie97 Nybegynder
06. januar 2006 - 11:22 #1
Funktionskaldet kan være rulop(mydiv,350,150) altså rulop([div-id],[starthøjde],[sluthøjde])
Avatar billede mm12010 Nybegynder
06. januar 2006 - 11:36 #2
er højden på dine divs ikke defineret på forhånd? eller skal de sættes i forbindelse med eksekveringen af funktionen?
Avatar billede snie97 Nybegynder
06. januar 2006 - 11:49 #3
Jo, men det var også mere for at illustrere at den skal starte ved 350 px højde, og slutte ved 150 px.
Avatar billede mm12010 Nybegynder
06. januar 2006 - 11:55 #4
et hurtigt udgangspunkt:

<script type="text/javascript">
var divs=new Array();
function rulop(divid,slut){
    divs[divid]=setInterval("rul('"+divid+"','"+slut+"');",100);
}
function rul(el,hojde){
    var el=document.getElementById(el);
    if(el.offsetHeight>hojde){el.style.height=el.offsetHeight-2+"px";}
    else{
        el.style.height=hojde+"px";
        clearInterval(divs[el.id]);
    }
}
window.onload=function(){
    rulop("rood",25);
    rulop("blaa",50);
}
</script>
...
<div id="rood" style="height:300px;background:red;">&nbsp;</div><br><br>
<div id="blaa" style="height:200px;background:blue;">&nbsp;</div><br><br>
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester