J'ai essayé plusieurs méthodes pour filtrer une classe à partir d'une sélection, y compris filter() et find() mais je n'arrive pas à la faire fonctionner. J'essaie de créer une fonction «Lights Out» pour la vidéo actuellement visionnée. C'est un simple code, je dois faire quelque chose de fondamentalement faux ...Le filtre jQuery .not() ne fonctionnera pas
Vous pouvez voir le code sur www.jaygeorge.co.uk/gwennan-sage/showreel. Que se passe-t-il? Lorsque vous passez la souris sur la barre 'Lights Out', tout devrait disparaître SAUF la vidéo la plus proche qui a une classe 'jouée' dessus.
$(document).ready(function(){
$(".lightsout").hover(function() {
$(this).next().addClass('playing');
$('body').not(".playing").animate({opacity: 0, backgroundColor: 'black'}, 1000);
});
});
Je pense que vous devriez utiliser une superposition div plutôt que de faire cela. –
'$ ('body'). Not (". Playing ")' ne fonctionne définitivement pas. '$ ('body')' will * only * sélectionne l'élément 'body', pas n'importe quel autre élément. 'not()' filtre la sélection en cours. Ainsi, il supprime l'élément 'body' de la sélection s'il n'a pas la classe' playing'. –
Hmmm mon ami a suggéré d'utiliser un message superposé div, mais cela signifie que la définition d'index z, je pensais qu'il y aurait une méthode plus simple, juste en cachant tout 'sauf le div .playing. Y a-t-il un autre moyen d'y parvenir? – SparrwHawk