如何使用jQuery定位元素

时间:2011-08-26 18:55:44

标签: javascript jquery

jQuery提供了一种获取元素位置的方法:

var position = myElement.position();

但是,此功能是只读的。

有没有办法设置元素的位置?

8 个答案:

答案 0 :(得分:3)

$("#element").offset({ top: XXX, left: YYY})

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

答案 1 :(得分:1)

是的,您只需在项目中添加适当的css:

// Example
myElement.css({ position: relative; top: -40, left: -40 });

答案 2 :(得分:0)

要定位你可以使用CSS方法:

$(element).css('left', '22px');

$(element).css({
  left: '22px',
   top: '10px'
});

这假设您的样式表中已经有position:relativeposition:absolute。如果没有,您也可以像添加lefttoprightbottom一样添加它。也适用于z-index

http://api.jquery.com/css/

答案 3 :(得分:0)

如果你在jQuery之外使用jQuery UI,你可以使用position utility

$(selector).position({
  of: $(parent_selector),  //position against
  my: 'right',             //element being positioned
  at: 'center',            //target element
  ...
});

答案 4 :(得分:0)

$('selector').css({'position':'relative','top':'10px','left':'10px');

答案 5 :(得分:0)

您可以通过设置其顶部和左侧样式属性来仅定位绝对或相对定位的元素。使用css方法并设置元素的positiontopleft属性。

$("selector").css({
    position: 'absolute',//Or relative
    top: 100,
    left: 100
});

答案 6 :(得分:0)

此问题的通常决定是使用.css()方法,如:

$(".element").css({
    position: absolute, //or relative
    top: '50px',
    left: '50px'
});

.position()等函数返回对象属性.top.left,因此您也可以尝试下一个:

$(".element").position().top = 50;
$(".element").position().top = 50;

我没有尝试过自己的最后一种方式,所以我不确定它是否有效,但第一种方法却很有效。

答案 7 :(得分:-1)

没有。 JQuery无法设置元素的偏移量。相反,它可以设置它的顶部和左侧属性。以及它的位置CSS属性。