Видя, как я нашел способ, не сказал, что это был правильный путь, но это сработало, я хотел поделиться им с вами.
Я хотел бы отметить, что на сортировку решения ушло не 2 месяца, а всего 2 месяца, чтобы опубликовать его здесь.
Для борьбы с этим;
$("#pf1_2").hide();
$("#pf2_2").hide();
$("#pf2_3").hide();
Я использовал это;
$("div[id^=pf_]").hide();
$("div[id$=_1]").show();
сначала он скрывает все идентификаторы, начинающиеся с pf_
затем он показывает только первое, сопоставляя идентификатор, заканчивающийся на _1
Для борьбы с этим;
$('#pfc1_1').click(function(){
$("#pf1_2").hide('fast');
$("#pf1_1").show('fast');
$("#pfc1_1").removeClass("pf_next").addClass("pf_current");
$("#pfc1_2").removeClass("pf_current").addClass("pf_next");
});
// etc.....
Я использовал это;
$('span[id^=pfc_]').live("click", function(e) {
e.preventDefault();
var id = $(this).attr('id').split('_');
var classname = $(this).attr('class');
var navwidth = $("div[id^=pf_"+id[1]+"_"+id[2]+"]").width();
if(classname != 'pf_current'){
$("span[id^=pfc_"+id[1]+"_]").removeClass("pf_current").addClass("pf_next");
$("span[id^=pfc_"+id[1]+"_"+id[2]+"]").removeClass("pf_next").addClass("pf_current");
// change portfolio item
$("div[id^=pf_"+id[1]+"_]").hide();
$("div[id^=pf_"+id[1]+"_"+id[2]+"]").delay('5').show();
}
});
Надеюсь, это поможет кому-то еще