Usingelement.offset().left
は、要素の親からのオフセット位置を取得します。別の要素からオフセット位置を取得する方法はありますか? たとえば、ここに私のhtmlがあります:
<div id="tile_id_579" class="product_tile">
<div class="selectContainer">
<table style="width:100%;">
<tbody>
<tr>
<td>
<div id="select-undefined" class="tzSelect">
<div id="options-undefined" class="tzOptions" style="max-height: 500px; width: 250px; display: none; min-width: 118px;">
<ul class="dropDown" id="dropdown-undefined">
<li><div class="header">Hand-Tossed Style Pizza</div>
<div class="subheader">The crowd-pleasing pizza that everyone can agree on.</div>
<div class="optkey">0</div>
</li>
<li><div class="header">Pan Pizza</div>
<div class="subheader">Our Pan Pizza is America's favorite!</div>
<div class="optkey">1</div>
</li>
</ul>
</div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
データベースから生成されます。を使用すると、divoffset().left
からのオフセットが取得されますが、 div から div#selecct-undefined
までの距離を取得する必要があります。これは可能ですか?#options-undefined
.selectContainer
編集して追加
これらの両方を試してみましたが、どちらも同じものを返します: 上: 381、左: 0。ただし、ドキュメントに関して左は 0 ではありません。それはできません。
var tip = $('#tile_id_579 #options-undefined .header');
tip.first().position();
と
var tip = $('#tile_id_579 #options-undefined .header');
tip.first().offset();
これがdivの場所である場合、両方の左が0になる可能性はありますか? 0 left は、ブラウザ ウィンドウの左側にあるという意味ではありませんか?