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

  • 3dmmfavs

    3dmmfavs

    29 Kasım 2009
  • A Alkhaldi

    A Alkhaldi

    12 Mayıs 2007
  • trickycharms

    trickycharms

    6 Aralık 2013