繁体   English   中英

如何在可滚动的div中获取对象的相对位置?

[英]How to get the relative position of an object inside a scrollable div?

在此输入图像描述

我有一个可滚动的div,上图中左边的那个。
在这个div中存在许多元素,让我们专注于其中一个(以灰色突出显示)并将其称为A.

右图是具有完整尺寸(没有滚动或宽度设置)的div的表示,其中A放置而不滚动。

如何在页面上显示左侧div时,如何找到X的值(绿色)。
即考虑到:

  1. 页面上的div已经调整大小
  2. 页面上的div是可滚动的(并已滚动)
  3. 我想x不是你!

即如何获得可滚动div内元素的相对y坐标? 用简单的话说:如何通过javascript计算x?

试试这个 :

var elementTop = document.getElementById('yourElementId').offsetTop;
var divTop = document.getElementById('yourDivId').offsetTop;
var elementRelativeTop = elementTop - divTop;

您需要将父级的div位置属性指定为相对属性,然后使用position()方法(如果您使用的是jquery)。

检查一下: http//jsfiddle.net/V9rGG/

尝试删除position: relative ,看看会发生什么。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM