J'ai un problème similaire à la question posée ici, mais un cas un peu différent.
La fonctionnalité que je recherche est presque identique au site Web de National Geographic, où l'aperçu apparaît lorsque vous survolez l'un des liens principaux, et reste visible lors de l'interaction avec celui-ci, ou en survolant le menu enfant, mais disparaît lorsque vous ne survolez pas l'élément de menu, les liens enfants, ou l'aperçu.
Lorsque je survole les éléments de liste ci-dessous, je voudrais qu'un DIV que je spécifie (dans ce cas correspondant par numéro - mais j'aimerais avoir la flexibilité de définir le nom du div individuellement si les numéros n'existent pas, ou ne correspondent pas [j'utilise Drupal, et tout est généré dynamiquement]) se déplace vers l'extérieur, ou apparaît simplement, en dessous (la liste sera en ligne). Il doit rester ouvert pour que les gens puissent cliquer sur le lien qui apparaît dans le DIV, mais lorsque vous survolez le DIV ou l'élément de liste, le div doit disparaître.
Mon HTML ressemble plus à ceci :
Premier élément
Deuxième élément
Troisième élément
Quatrième élément
Premier bloc
Cliquez ici !
Deuxième bloc
Cliquez ici !
Troisième bloc
Cliquez ici !
Quatrième bloc
Cliquez ici !
Mon CSS ressemble à ceci :
#switches li {
display: inline-block;
height: 50px;
background-color: #F33;
}
#block-1,
#block-2,
#block-3,
#block-4 {
position: absolute;
top: 50px;
height: 300px;
width: 500px;
background-color: #999;
display: none;
}
#block-1.active,
#block-2.active,
#block-3.active,
#block-4.active {
display: block;
}
Et mon jQuery (basé sur la réponse de Carl Meyer à l'autre fil de discussion, que j'ai sûrement gâché) ressemble à ceci :
$(document).ready(function() {
switches = $('#switches > li');
slides = $('#navigation > div.block');
switches.each(function(idx) {
$(this).data('slide', slides.eq(idx));
}).hover(
function() {
switches.removeClass('active');
slides.removeClass('active');
$(this).addClass('active');
$(this).data('slide').addClass('active');
});
});
Je ne suis pas familier avec le fonctionnement de ce code, j'ai essayé de le comprendre, mais je ne suis pas sûr de comprendre l'utilisation de "idx" et comment le terme singulier "slide" entre en jeu.
Je suis assez nouveau en jQuery et j'ai été chargé de ce projet. J'apprécie toute aide, et j'espère que d'autres pourront également le trouver utile !