Мой javascript является самым слабым из моих интерфейсных веб-знаний, и я предполагаю, что это гораздо более эффективный способ достичь моей функциональности, чем то, как я это сделал.Элегантный javascript для скрытия и отображения divs
В принципе, у меня есть сайт, на котором у вас есть <li>
элементов, и при нажатии они показывают конкретный div, и если другой div (связанный с другим элементом <li>
) в настоящее время виден, он скрывает его и отображает соответствующий div. Он также назначает класс active
для элемента <li>
, чтобы предоставить другой цветной значок для активного раздела (стандартная практика UX).
Вот моя функция HTML и Javascript.
<li id="general">General</li>
<li id="blog">Blog</li>
<li id="twitter">Twitter</li>
И Javascript (это больно, просто глядя на него)
$(document).ready(function() {
$("#general").addClass("active");
$("#general").click(function() {
$(".data-tab").hide();
$(".settings-general").toggle();
$("li").removeClass("active");
$("#general").addClass("active");
});
$(".settings-twitter").hide();
$("#twitter").click(function() {
$(".data-tab").hide();
$(".settings-twitter").toggle();
$("li").removeClass("active");
$("#twitter").addClass("active");
});
$(".settings-blog").hide();
$("#blog").click(function() {
$(".data-tab").hide();
$(".settings-blog").toggle();
$("li").removeClass("active");
$("#blog").addClass("active");
})
});
Не поймите меня неправильно, это хорошо работает! Но это выглядит утомительно, и, вероятно, намного быстрее, чем может добиться JQuery. Любой совет для начинающего JS?
Этот вопрос не соответствует теме, потому что он лучше подходит для http://codereview.stackexchange.com/. – Andy
Можете ли вы опубликовать скрипку? или остальной части вашего html? Полная структура вашего кода поможет – jmore009