Я знаю этот сценарий - я фактически рефакторил его для другого вопроса.Код довольно плохой, в том смысле, что он содержит много плохих практик.Посмотрим, что здесь можно сделать:
$(".tabs_content").not(':first-child').hide();
var tabs = $('.tabs li');
tabs.filter(':first-child').addClass('active');
tabs.click(function() {
var current = $(this);
if(!current.hasClass('active')){
current.addClass('active').siblings().removeClass('active');
var activeTab = current.find("a").attr("href");
current.parent().next().children().hide().filter(activeTab).fadeIn();
}
return false;
});
Там - единый скрипт для всех ваших вкладок.Переименуйте все ваши контейнеры вкладок в tabs
.При этом используется довольно тяжелая цепочка, которая на самом деле не очень эффективна, но, учитывая DOM, тут особо нечего делать.Используйте это, чтобы вам не понадобилось два скрипта, которые делают по сути одно и то же.
Посмотрите, как это работает здесь: http://jsfiddle.net/E3SFt/2/. Я скопировал ваш символ HTML для символа для этого с незначительной модификацией имен классов, как отмечено выше.Также обратите внимание, что там есть недопустимый HTML-код - элементы li
внутри div
s недопустимы.
Редактировать: Глупая ошибка, this.hasClass
должно быть current.hasClass