Так что в основном я только начинаю с jQuery и JS, и у меня есть проблема.jQuery slideDown и slideUp toggle issues
У меня есть небольшое меню, когда пользователь нажимает на одну из ссылок, содержимое скользит вниз. Если окно открыто, оно переместится вверх.
Моя проблема в том, что когда вы нажмете на ту же самую ссылку, чтобы закрыть ее снова, она сместится, а затем, потому что код jQuery подсказывает, что он снова сползает вниз. Это означает, что вы никогда не сможете закрыть один бит содержимого, когда один из них открыт.
Мой JQuery Кодекс:
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");
});
});
и HTML-код (упрощенно, конечно):
<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>
У меня также есть jsFiddle ссылку.
Я уверен, что на самом деле легко ответить. Я пробовал использовать addClass
и removeClass
, но, похоже, это не совсем правильно. Может ли кто-нибудь помочь?
С уважением,
Tom Oakley
Используйте атрибут 'href' вместо своего собственного' data-menu'. Тогда это имеет смысл без JS. – powerbuoy
@powerbuoy: Да, вы правы, это отличная идея. Я соответствующим образом обновил ответ. –