Avatar billede tblaster Nybegynder
11. februar 2006 - 13:12 Der er 6 kommentarer og
1 løsning

Flytte positionen af indholdet i en div-tag vha. moveTo()

Hejsa

Jeg har 2 div-tags som jeg arbejder med. Det jeg ønsker, er at kunne flytte indholdet som vises i tagen. Mine 2 divs er som følgende:

<div id="content1" style="position:relative; left:0px; top:0px; text-align:justify;">
</div>
<div id="scrollBar1" style="position:absolute;width:100px;height:10px; background-color:#999999;font-size:1px;">
</div>

Det jeg prøver at gøre, er følgende:
this.bar[id].moveTo(xpos, 0);
this.content[id].moveTo(xpos2, 0);

Hvor xpos og xpos2 indeholder værdier som:
xpos  = 137.48
xpos2 = 790.0799999999999

Og min bar og content er defineret som følgende:
scrollbar.content[i] = document.getElementById('content' + i);
scrollbar.bar[i] = document.getElementById('scrollBar' + i);

Men der sker ikke noget. Hvad gør jeg galt?
Avatar billede olebole Juniormester
11. februar 2006 - 14:45 #1
<ole>

moveTo er en metode på window-objektet. Den kan ikke bruges på HTML-elementer  :)

HTML-elementer flyttes ved at sætte/ændre left- og top-properties på elementets style-objekt

/mvh
</bole>
Avatar billede tblaster Nybegynder
11. februar 2006 - 14:52 #2
Kan godt se at mit spørgsmål er lidt tvetydigt. Jeg vil som sådan ikke flytte selve elementet, altså hvor på siden den er placeret som gres med left og top værdierne.

Jeg vil flytte det der vises i div elementet. Her er hele kode omkring mit div element. Måske det kan hjælpe med at forstå hvad jeg søger:

<div id="container1" style="position:relative; width:600px; height:100; overflow:hidden;">
    <div id="content1" style="position:relative; left:0px; top:0px; text-align:justify;">
        <nobr>
            En masse tekst og billeder
        </nobr>
    </div>
</div>

Min div tag, content1, har en størrelse der er meget størrere end de 600px som container1 har. Derfor vises hele indholdet jo ikke. Jeg vil derfor gerne, ved at trykke på en knap eller ligende, flytte på det indhold som der pt. vises i content1, altså udføre en moveto funktion til et andet sted.
Avatar billede olebole Juniormester
11. februar 2006 - 15:24 #3
Idet, jeg tillader mig at formode, det inderste div hedder 'content2'  ;o)

Du sætter 'position:absolute' på 'content2'. Derefter kan det flyttes ved at sætte andre værdier på dets style-objekts left- og top-properties:

var oElm = document.getElementById("conten2");
oElm.left = "100px";
oElm.top = "30px";
Avatar billede olebole Juniormester
11. februar 2006 - 15:25 #4
- manglede et 't' i navnet på div'et:

var oElm = document.getElementById("content2");
Avatar billede tblaster Nybegynder
11. februar 2006 - 16:02 #5
Super. Du havde ret, jeg skulle bare sætte en left værdi. Takker. Smid endelig et svar.
Avatar billede olebole Juniormester
11. februar 2006 - 16:41 #6
*griiiiiiib*  ;o)
Avatar billede olebole Juniormester
11. februar 2006 - 16:50 #7
Tak for points  ;o)
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