Я довольно новичок в jQuery и пытаюсь найти способ упростить / оптимизировать мой код, потому что сейчас он работает, но я просто знаю, что есть более эффективный способ сделать это.
$(".th_s3studios_layout").click(function(){
$("#portfolio_home").fadeOut(500);
// Fading in the project page
$("#th_s3studios_layout").delay(1000).fadeIn(500);
});
$(".th_mangafan_layout").click(function(){
$("#portfolio_home").fadeOut(500);
// Fading in the project page
$("#th_mangafan_layout").delay(1000).fadeIn(500);
});
$(".th_356_P3").click(function(){
$("#portfolio_home").fadeOut(500);
// Fading in the project page
$("#th_356_P3").delay(1000).fadeIn(500);
});
$(".th_hrycyna_layout").click(function(){
$("#portfolio_home").fadeOut(500);
// Fading in the project page
$("#th_hrycyna_layout").delay(1000).fadeIn(500);
});
Вот некоторая соответствующая разметка HTML, которая идет с ней.
<div class="col_16" id="portfolio_home">
<div class="col_04 folio"><div class="th_s3studios_layout">Content 1</div></div>
<div class="col_04 folio"><div class="th_mangafan_layout">Content 2</div>
</div>
<div class="col_16" id="th_s3studios_layout"
<div class="col_04 folio"><div class="preview1">Pop up stuff for content 1</div></div>
<div class="col_04 folio"><div class="preview2">Pop up stuff for content 1</div></div>
</div
<div class="col_16" id="th_mangafan_layout"
<div class="col_04 folio"><div class="preview1">Pop up stuff for content 2</div></div>
<div class="col_04 folio"><div class="preview2">Pop up stuff for content 2</div></div>
</div
Вы можете видеть, что функция в основном исчезает из одного блока и исчезает в другом.Вы можете видеть, что поле, в котором оно исчезает, всегда совпадает с именем функции .click, за исключением того, что это отдельный контейнер идентификатора CSS, а не класс.Я полагаю, что должен быть способ создать разделяемую функцию для каждой из них, которая каким-то образом изменяет имя класса на идентификатор, совпадающий с тем же именем функции, и повторно использует остальную часть кода.Может ли кто-нибудь помочь мне пролить свет на это?