Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/449.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用jQuery定位元素_Javascript_Jquery - Fatal编程技术网

Javascript 如何使用jQuery定位元素

Javascript 如何使用jQuery定位元素,javascript,jquery,Javascript,Jquery,jQuery提供了一种获取元素位置的方法: var position = myElement.position(); 但是,此函数是只读的 有没有办法设置我的元素的位置?要设置位置,可以使用CSS方法: $(element).css('left', '22px'); $(element).css({ left: '22px', top: '10px' }); 这假设样式表中已经有位置:相对的或位置:绝对的。如果没有,您也可以添加它,就像添加左或顶、右或底一样。也适用于z-inde

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

var position = myElement.position();
但是,此函数是只读的


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

要设置位置,可以使用CSS方法:

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

$(element).css({
  left: '22px',
   top: '10px'
});
这假设样式表中已经有
位置:相对的
位置:绝对的
。如果没有,您也可以添加它,就像添加
一样。也适用于
z-index


是的,您只需将适当的css添加到项目:

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

如果除了jQuery之外还使用jQuery UI,则可以使用
位置


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

通过设置元素的顶部和左侧样式属性,您只能定位绝对或相对定位的元素。使用
css
方法并设置元素的
位置
顶部
左侧
属性

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

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

$(".element").css({
    position: absolute, //or relative
    top: '50px',
    left: '50px'
});
类似于
.position()
的函数返回对象属性
.top
.left
,因此您也可以尝试下一个:

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

我自己还没有试过最后一种方法,所以我不确定它是否有效,但第一种方法确实有效。

你可以使用CSS函数,但我认为实际上没有一种方法可以用x和y来定位元素。@Pelshoff-那.offset()呢,如我下面的回答所示?@Javid你似乎完全正确!很酷的东西,谢谢:)那里面需要一个
位置:relative
somewhere@Joseph我假设用户已经在CSS.gotcha中声明了这一点。不过,请记住,jQuery的get position方法将获取元素的位置,即使元素是静态定位的。因此,元件可能没有相对定位。
$("#element").offset({ top: XXX, left: YYY})
$(".element").css({
    position: absolute, //or relative
    top: '50px',
    left: '50px'
});
$(".element").position().top = 50;
$(".element").position().top = 50;