Intrebare offsetLeft, offsetTop, offsetParent

Discutii si intrebari legate de scripturi si functii JavaScript, jQuery si Ajax, cod JavaScript in general.
patricia
Mesaje:82

Intrebare offsetLeft, offsetTop, offsetParent

Ce inseamna aceste proprietati in JavaScript ?
element.offsetLeft
element.offsetTop
element.offsetParent

MarPlo Mesaje:4343
Din testele pe care le-am facut am vazut ca offsetParent returneaza elementul parinte principal.
- offsetTop returneaza distanta verticala fata de marginea de sus, relativa la elementul oarinte dat de offsetParent.
- offsetLeft returneaza distanta orizontala fata de marginea din stanga, relativa la elementul oarinte dat de offsetParent.
Uite un exemplu:

Cod: Selectaţi tot

<style>
body {background-color:#ededfe;}

#copil {
 position: absolute;
 top: 12px;
 left: 140px;
}
</style>

<div id="parinte">
 Element parinte.
 <div id="copil">Element copil</div>
</div>
<button onclick="test('copil')">Click</button>

<script><!--
function test(id) {
  var elm = document.getElementById(id);
  var tag_parinte0 = elm.offsetParent.tagName;     // nume Tag elementul parinte principal
  var mgtop = elm.offsetTop;           // distanta top
  var mgleft = elm.offsetLeft;         // distanta left

  alert(tag_parinte0 + ' - ' + mgtop + ' - ' + mgleft);     // BODY - 12 140
}
//-->
</script>