¿Cómo desvanecer todos los divs en un contenedor excepto uno con jQuery?
Pregunta
Tengo esto:
$("#id").click(function() {
$('.swoosh div').fadeOut('fast', function(){
$('.template').fadeIn('fast');
});
});
.swoosh
es el contenedor div y.template
es el div en el que quiero permanecer cuando hago clic en #id
, mientras que todos los demás divs interior .swoosh
desaparecer.
Me siento un poco tonto, pero he jugado durante años en vano. Por favor, ayude a un hermano.
Solución
Probablemente puedas usar el not
doc selector
$("#id").click(function() {
$('.swoosh div:not(.template)').fadeOut('fast');
});
Otros consejos
$('.swoosh div[class!="template"]').fadeOut('fast');
$("#id").click(function() {
$('.swoosh div').fadeOut('fast');
$('.template').fadeIn('fast');
});
Dado que se está desvaneciendo el contenedor Div, parece lógico que todos los elementos dentro de ese div también se están desvaneciendo. Entonces, lo que puede hacer es extraer el elemento del contenedor div y colocarlo en otro lugar del DOM, antes de desvanecer el contenedor div. De esa manera, debe permanecer visible.
vieja pregunta pero esto también funcionaría
$("#id").click(function() {
$('.swoosh div').not($('.template')).fadeOut('fast');
});
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow