设置jQuery元素相对于父元素的偏移量
Setting offset of an element with jQuery relative to parent
我正在尝试设置元素相对于父元素的偏移量(顶部和左侧)
我有一个相对位置的容器和一个绝对显示位置的元素。如何设置绝对元素的顶部和左侧?偏移设置与文档相关的顶部和左侧,我不需要它。
提前感谢!
编辑:这是我的代码:
var styles = {
width: 200,
height: 200,
position: 'absolute',
top: 10,
left: 20
};
$imgScaledCircle.attr('src', pathimg).css(styles).addClass('active');
它设置了除top和left之外的所有属性。我不明白为什么。
您可以这样使用:
$(child).each(function () {
$(this).css({
top: $(this).parent().offset().top + 5,
left: $(this).parent().offset().left + 5
});
});
这里child
是子元素的选择器。您可以将硬编码的5
替换为您想要替换的任何位置。
具有position:absolute
的n元素使用相对于您发现向上移动的父链的第一个容器的坐标,该位置为absolute
或relative
。具有默认position
属性(static
)的元素在此搜索期间不被考虑。
若要将元素放入位于容器内给定像素的容器中,则容器本身应声明为position: relative
,而left
和top
为默认值。
.container { position: relative; }
.element { position: absolute;
left: 100px;
top: 30px; }
我明白为什么我的代码不工作了。我把一个值存储在一个变量中:
var coord = $that.attr('coords').split(',');
var styles = {
position: 'absolute',
top: coord[1],
left: coord[0]
};
它不工作。可能是因为split方法返回的是字符串而不是数字。如果我这样写(强制一个变量为Number):
var coord = $that.attr('coords').split(',');
var styles = {
position: 'absolute',
top: (coord[1] >>> 0),
left: (coord[0] >>> 0)
};
它正确地添加样式。谢谢你的帮助。
- 可以在调整窗口大小时重新调整stellar.js的元素偏移量
- 可滚动元素,如何在调整大小时更改顶部偏移量
- 元素偏移量始终为0
- 使用jquery.visible.js和偏移量检测元素是否在视口中
- 获取元素相对于父容器的位置/偏移量
- I'我试图用一个按钮随意移动一个CSS元素,我试图使用偏移量,但onlick不起作用
- 如何获取固定元素的“原始”偏移量().top
- 元素的偏移量 - 内联 - 使用 angularjs
- 如何获取元素与当前屏幕位置的偏移量
- 父元素的鼠标关闭事件时错误的偏移量 X 和偏移量 Y
- 使用边距获取正文元素的左偏移量和顶部偏移量:自动
- 如果TABLE元素有边框(IE与Chrome),则偏移量不同
- 正在获取元素位置/偏移量
- 使用js获取与html源代码相关的选定html元素偏移量
- 获取元素偏移量在设置位置之前返回相同的值:绝对值
- jquery:在窗口调整大小时更新元素偏移量顶部
- 如何获取dom元素相对于其父元素的字符偏移量
- Vue-从数组中拼接一个已定位的元素将把它的偏移量应用到下一个索引
- 滚动到元素's偏移量取决于页眉高度
- 如何使用angularjs在javascript中获取父元素偏移量