Donc, fondamentalement, je commence juste avec jQuery et JS et j'ai rencontré un problème.jQuery slideDown et slideUp basculer les problèmes
J'ai un petit menu qui lorsque l'utilisateur clique sur l'un des liens, le contenu glisse vers le bas. S'il y a déjà une boîte ouverte, elle glisse vers le haut. Mon problème est que lorsque vous cliquez sur le même lien pour le refermer, il glisse vers le haut, mais parce que le code de jQuery lui dit de redescendre, c'est le cas. Cela signifie que vous ne pouvez jamais fermer un seul morceau de contenu une fois que l'un d'eux est ouvert.
Mon code jQuery est:
jQuery(document).ready(function(){
jQuery(".radius5").hide();
jQuery("a#contact-btn").click(function() {
jQuery(".radius5").slideUp();
jQuery("div#contact").slideDown("slow");
});
jQuery("a#about-btn").click(function() {
jQuery(".radius5").slideUp();
jQuery("div#about").slideDown("slow");
});
jQuery("a#portfolio-btn").click(function() {
jQuery(".radius5").slideUp();
jQuery("div#portfolio").slideDown("slow-up");
});
});
et le code HTML (simplifié bien sûr):
<a id="contact-btn" class="btn-slide" href="#">Contact</a>
<a id="about-btn" class="btn-slide" href="#">About</a>
<a id="portfolio-btn" class="btn-slide" href="#">Portfolio</a>
<div id="contact" class="radius5">Contact Us</div>
<div id="about" class="radius5">About Us</div>
<div id="portfolio" class="radius5">Our Portfolio</div>
J'ai aussi un lien jsFiddle.
Je suis sûr que c'est vraiment facile de répondre. J'ai essayé d'utiliser addClass
et removeClass
mais je n'arrivais pas à le comprendre. Quelqu'un peut-il aider?
Cordialement,
Tom Oakley
Utilisez l'attribut 'href' à la place de votre propre' data-menu'. Alors cela a du sens sans JS aussi. – powerbuoy
@powerbuoy: Oui, vous avez raison, c'est une excellente idée. J'ai mis à jour la réponse en conséquence. –