jQuery .offset设置y值

时间:2011-01-06 14:53:22

标签: jquery css offset

我是jQuery的新手。有人可以回答这个吗?

我知道我将使用以下代码行将layer1设置为layer2的位置。

$("#layer1").offset($("#layer2").offset());

如何设置y值?我不确定。

由于

5 个答案:

答案 0 :(得分:7)

.offest()的jQuery文档读取:

  

.offset()返回一个包含top和left属性的对象。

了解这一点,您可以完成以下任务:

var offset = $("#layer2").offset();
$("#layer1").css({
    'top' : offset.top,
    'left': offset.left
});  

或者,您可以根据自己的要求单独设置它们。

$("#layer1").css('top', offset.top);  // or...
$("#layer1").css('left', offset.left);

最后,因为你只需要一个值(顶部),所以偏移是过度的;它比你需要的更贵。请改用以下优化代码段。

var top = $('#layer2').css('top');
$('#layer1').css('top', top);

答案 1 :(得分:0)

只需使用/设置css top属性

$("#layer1").css("top",$("#layer2").css("top"));

答案 2 :(得分:0)

$("#layer1").css({
  'top': $("#layer2").offset().top
});

编辑 .top / .left似乎是设置者 EDITv2 可以设置偏移量,但必须通过.offset()方法完成。

答案 3 :(得分:0)

根据 http://api.jquery.com/offset/

$("p:last").offset({ top: 10, left: 30 });

可以使用。因此,你应该能够删除你想要的东西。

答案 4 :(得分:0)

使用offset.top和offset.left - 这些是x和y的.. offset()本身返回x和y(或顶部和左侧)