Hvis man skal gøre noget skal man have et referencepunkt, som alle de der spans skal have en bestemt offset fra, f.eks. en tabelcelle eller en omkrande div ...
Derefter skal man have fat i den posiotion med getPos:
function getPos(elm) { for(var zx=zy=0;elm!=null;zx+=elm.offsetLeft,zy+=elm.offsetTop,elm=elm.offsetParent); return {x:zx,y:zy} }
-- og så skal alle elementerne flyttes på plads: document.getElementById('drag').style.left = zx + 223 + 'px';
Synes godt om
Slettet bruger
10. november 2003 - 00:18#2
okay, skal det gøres alle steder hvor man henter deres position i scriptet, er pænt dårlig til JavaScript, så spørger måske lidt dumt
Hvis du kigger på geeeets kode, så er alle positioneringer samlet i de enkelte tags, og man skal have fat i alle <spans> og både deres top og left, men det er den samme kode, som skal skrives en stribe gange, feks.
Desværre kan man alene gøre sådanne ting onload, fordi elementer i dokumentet ikke vil være færdiginitialiseret før dokumentet lukkes i processen, mens browseren forsøger at vise så meget som muligt undervejs, men et lille hack:
Sæt display:none; ind i style for alle disse elementer og tilføj følgende i løkken lige efter left sættes: s.style.display="block;";
-- og velbekomme '-)
Synes godt om
Slettet bruger
10. november 2003 - 01:21#7
takker endnu engang, men tror problemet ligger i min grafik, som er rimelig tung på siden, og derved gør at den absoluttet position, først kan findes efter at alle elementer er hentet
body onload vil først udføres efter at alle elementer er _initialiseret_ men ikke nødvendigvis hentet/færdige, f.eks. vil .gif-billeder kunne være loadet i første bid af en inkrementel version ...
Men du kan vel lave en version, hvor de ikke skal flyttes så meget:
Højden ændres næppe meget, så den kan du næsten sætte absolut rigtigt fra starten, og hvor vil elementerne sidde i den opløsning, du går ud fra ?-)
Jeg laver f.eks. mine sider til en opløsning på 800*600 men regner da med at en masse af mine gæster har mindst 1024*768 (bruger dog ikke absolut positionerede elementer !-)
Ud fra det kunne du jo flytte dem til en absolut position, som modsvarer de der 112px på hver side af hoveddelen og på den måde få kalorius til at flytte sjældnere og mindre !o]
er testet, men desvære formår den så ikke at vise noget. min formodning er at den har gennemæøbet scriptet inden den når til span, og derved ikke får den sat til block.
Næh, der var ikke 'px' på, men du bruger variablen pX til at opbevare et grundmål (og pY !-), men jeg har ikke kigget efter lige nu !o]
Synes godt om
Ny brugerNybegynder
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.