Solución:
Esto es algo de CSS, no de jQuery (aunque puede usar jQuery para modificar el CSS).
$('element').css('z-index', 9999); // note: it appears 'zIndex' no longer works
O, el posicionamiento absoluto traerá algo a la cima:
$('element').css('position', 'absolute');
Con jQuery (como preguntaste):
$('#a-div').parent().append($('#a-div')); // Pop a div to the front
Es extraño cómo todo el mundo se fue con el índice z. ¿Por qué anular el orden de apilamiento natural cuando puede colocarlo al frente dentro del DOM?
Cuando trabaje con varios elementos, tendrá que recorrer y ver cuál tiene el índice Z más alto, y establecer la parte superior en ese +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);
Para una versión sin CSS (si ninguna de las capas tiene un índice z especificado), también puede agregar el elemento nuevamente:
$('.click-to-top').click(function(){
$(this).parent().append(this);
});
(No sé si eso es más lento que con CSS z-index
.)
Para no CSS que no sea jQuery, simplemente añádalo nuevamente:
// var element = document...;
element.parentNode.appendChild(element);
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)