SORU
13 Kasım 2008, PERŞEMBE


Div/span etiketi pozisyonu alın

Biri belirtildiğinde div span bir elemanı * & * *5 6* pozisyon almak için nasıl bana gösterebilir misin?

yani:

<span id='11a' style='top:55px;' onmouseover="GetPos(this);">stuff</span>
<span id='12a' onmouseover="GetPos(this);">stuff</span>

Eğer yaparsam, her şeyden önce,:

document.getElementById('11a').style.top

55px değeri döndürülür. Eğer çalışırsam ancak span için '12a', sonra da hiçbir şey geri alır.

Elimde bir demet div/spans hakkında bir sayfa veremem belirtin top/left özellikler için, ama gerek görüntü div doğrudan altında bu eleman.

CEVAP
13 Kasım 2008, PERŞEMBE


Bu fonksiyon öğesi sayfasına göre x,y konumunu söyler. Temelde tüm bu elemanın ailesi döngü ve onların uzaklıklar birlikte eklemek zorunda.

function getPos(el) {
    // yay readability
    for (var lx=0, ly=0;
         el != null;
         lx  = el.offsetLeft, ly  = el.offsetTop, el = el.offsetParent);
    return {x: lx,y: ly};
}

Eğer sadece eleman kabına göre x, y konumu istedim,ancak sonra tüm ihtiyaç vardır:

var x = el.offsetLeft, y = el.offsetTop;

Doğrudan bu altındaki bir öğe koymak, ayrıca yüksekliği bilmeniz gerekir. Bu/offsetWidth özellik offsetHeight saklanır.

var yPositionOfNewElement = el.offsetTop   el.offsetHeight   someMargin;

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Chriselle Lim

    Chriselle Li

    26 Ocak 2008
  • DroidModderX ROOT Master

    DroidModderX

    14 ŞUBAT 2011
  • Jason Rosolowski

    Jason Rosolo

    25 EKİM 2006