在jQuery中有一种方法可以将div带到前面吗?

如果我有一堆绝对定位的div并且它们重叠,我怎么能得到一个特定的div来到前面? 再次感谢你们!

这是一个CSS的东西,而不是jQuery的东西(尽管你可以使用jQuery来修改css)。

$('element').css('z-index', 9999); // note: it appears 'zIndex' no longer works 

或者,绝对定位会带来一些东西:

 $('element').css('position', 'absolute'); 

使用jQuery (就像你问的那样):

 $('#a-div').parent().append($('#a-div')); // Pop a div to the front 

奇怪的是每个人都使用z-index。 为什么要在DOM中将它弹出到前面时覆盖自然堆叠顺序?

当您使用多个元素时,您必须循环查看哪个具有最高的z-index,并将顶部设置为+ 1。

http://jsfiddle.net/forresto/Txh7R/

 var topZ = 0; $('.class-to-check').each(function(){ var thisZ = parseInt($(this).css('zIndex'), 10); if (thisZ > topZ){ topZ = thisZ; } }); $('.clicked-element').css('zIndex', topZ+1); 

对于非CSS版本(如果没有指定z-index的图层),您也可以再次追加该元素:

 $('.click-to-top').click(function(){ $(this).parent().append(this); }); 

(我不知道这是否比CSS z-index慢。)

对于非CSS非jQuery,只需再次附加它:

 // var element = document...; element.parentNode.appendChild(element); 

使用.css()并应用position属性和z-index属性。

使用jQuery对此有点过分。 而是使用CSS’z -index属性 :