Jquery 设置内联元素动画';s位置()左

Jquery 设置内联元素动画';s位置()左,jquery,css,jquery-animate,Jquery,Css,Jquery Animate,我正在尝试使用jQuery水平移动随机定位的内联 在阅读了这篇文章之后,您似乎必须将元素的位置从默认的“static”更改为“relative” 但是,难道不可能只设置position().left值的动画吗 无法理解,因为大多数答案都指向动画左,这需要position:relative这是使用jQuery制作简单元素动画的主要思想,正如我所看到的: html: jQuery: $(function(){ $('#moving').animate({ left: '+=800' }, 8

我正在尝试使用jQuery水平移动随机定位的内联

在阅读了这篇文章之后,您似乎必须将元素的位置从默认的“static”更改为“relative”

但是,难道不可能只设置
position().left
值的动画吗


无法理解,因为大多数答案都指向动画
,这需要
position:relative

这是使用jQuery制作简单元素动画的主要思想,正如我所看到的:

html:

jQuery:

$(function(){
    $('#moving').animate({ left: '+=800' }, 8000); // this is RELATIVE positioning
    // or
    $('#moving').animate({ left: '1000px' }, 8000); // this is ABSOLUTE positioning
});
希望有帮助

但是,难道不可能只设置
position().left
值的动画吗

那么,左边的
position()值是多少

jQuery不是魔术。在引擎盖下,
animate
方法只需反复修改
element.style.left
即可创建平滑过渡
element.style
是一个方便的属性,允许您修改元素的
style
属性的内容,这反过来又是将CSS规则应用于特定元素的一种方法


所以要回答你的问题:不,你不能。

我以前没见过
+=
这个把戏。这是CSS还是jquery?
#moving{position:relative;}
$(function(){
    $('#moving').animate({ left: '+=800' }, 8000); // this is RELATIVE positioning
    // or
    $('#moving').animate({ left: '1000px' }, 8000); // this is ABSOLUTE positioning
});