jQuery $('#divOne')。animate({z Index:-1000},2000)不起作用?

时间:2010-06-26 06:12:43

标签: jquery z-index jquery-animate

我试过jQuery的

$('#divOne').animate({zIndex: -1000}, 2000)

到那个z-index为1000的元素,但它仍然高于其他元素?

(如果我使用firebug将其更改为-1000,那么它将低于其他元素)

2 个答案:

答案 0 :(得分:37)

jQuery尝试在动画的每一步中为该值添加一个单位。因此,99代替99px,而zIndex当然不是有效的20%值。

似乎不可能将jQuery使用的单位设置为一个空白字符串 - 它要么采用您在值中包含的单位(例如px - 百分比单位),否则它将使用animate()

幸运的是,你可以破解var div = $('#divOne'); $({ z: ~~div.css('zIndex') // ~~ to get an integer, even from non-numerical values like "auto" }).animate({ z: -1000 }, { step: function() { div.css('zIndex', ~~this.z); }, duration: 2000 }); 来完成这项工作:

~~

有关{{1}}的更多信息,请参阅this

答案 1 :(得分:-2)

您无法为zindex设置动画。您可以使用.css进行设置。

$("#divOne").css('z-index' , '-1000');