Avatar billede lauge Nybegynder
26. august 2002 - 23:05 Der er 5 kommentarer og
2 løsninger

åååå, hvor er det nu man finder x og y på f.eks. et <div>?

Hej røder,

Jeg har et <div> som er placeret "relative" på side.
Men jeg vil gerne finde antal pixels fra toppen af siden ned til mit <div>.

Hvon er det nu syntaksen er?

Ekstra mange points pga. det sene tidspunkt :-)

Godnat! z  z  z  z ZZZZ  z  z  ZZZZ

Lauge
(PS jeg skal op kl. 05.50)
Avatar billede medions Nybegynder
26. august 2002 - 23:23 #1
alert(document.all.hej.style.top);

//>Rune
Avatar billede jakoba Nybegynder
26. august 2002 - 23:23 #2
der skal bruges et lille script:

function getXYcoord ( nvn ) {
    var rd = { x:0 ,y:0 };
    if ( document.getElemetById ) {
        var elm = document.getElemetById( nvn );
    } else
    if ( document.all ) {
        var elm = document.all[ nvn ];
    } else {
        // beklager, jeg kan ikke finde en relativ div i NS4
        return rd
    }
    do { rd.x += parseInt( elm.offsetLeft );
        rd.y += parseInt( elm.offsetTop );
        elm = elm.offsetParent;
    } while ( elm );
    return rd
}; //end getXYcoord ( string ) -> object{x,y}

var coords = getXYcoord( 'olsen' );
alert( "olsens Xposition = " +coords.x +"\nolsens Yposition = " +coords.y );
     
fortæller position på  <div id='olsen' ...>

mvh JakobA
Avatar billede lauge Nybegynder
27. august 2002 - 09:05 #3
hmm, jeg kan ikke få nogle af dem til at virke!

Men jeg har fundet denne her som virker fint hvis mit <div> ikke er placeret i en <table>, for lige så snart den bliver lagt i en table så kan den ikke finde den?

function findPosX(obj)
{

    var curleft = 0;
    if (document.getElementById || document.all)
    {
        while (obj.offsetParent)
        {
            curleft += obj.offsetLeft
            obj = obj.offsetParent;
        }
    }
    else if (document.layers)
        curleft += obj.x;
    return curleft;
}

function findPosY(obj)
{
    var curtop = 0;
    if (document.getElementById || document.all)
    {
        while (obj.offsetParent)
        {
            curtop += obj.offsetTop
            obj = obj.offsetParent;
        }
    }
    else if (document.layers)
        curtop += obj.y;
    return curtop;
}

Jeg vil jo gerne kunne finde <div> i f.eks. :

<table id="tableID">
  <tr id="trID">
    <td id="tdID">
      <div id="Hejsa">Vi er de vilde kaniner...</div>
    </td>
  </tr>
</table>

Ååååååå :-)

Lauge
Avatar billede lauge Nybegynder
27. august 2002 - 09:17 #4
æææ, nu virker det sq :-)
Avatar billede lauge Nybegynder
27. august 2002 - 09:19 #5
I får sq de røde æbler alligevel...
Avatar billede jakoba Nybegynder
27. august 2002 - 15:21 #6
tak :)
Avatar billede medions Nybegynder
27. august 2002 - 15:24 #7
Fair nok :-)
Thx 4 Poinz

//>Rune
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