Я понятия не имел, как назвать эту тему, извините за это. Я строю простую корзину покупок, разбитую на несколько шагов. Все это должно работать подобно слайдерам или известным вкладкам.jQuery slider/switcher/tabs
Давайте посмотрим на код, чтобы все стало проще.
$(document).ready(function(){
$('.stepNumber').click(function(e) {
e.preventDefault();
var stepDesc = $(this).next('.stepDesc');
if(!stepDesc.is(':visible')) {
$('.step').removeClass('stepActive');
$(this).parent().addClass('stepActive');
}
var val = parseInt($('.step.stepActive').children('div.stepNumber').text());
switch(val) {
case 1:
$('.formStepTwo').hide();
$('.formStepOne').show();
break;
case 2:
$('.formStepOne').hide();
$('.formStepTwo').show();
break;
case 3:
alert('blabla');
break;
}
});
});
.formStep {
display: none;
}
step {
float: left;
border: 1px solid #333;
margin-right: 5px;
}
.stepNumber {
background: #333;
color: #fff;
float: left;
padding: 6px 10px;
}
.stepDesc {
text-align: left;
padding: 6px 10px;
width: 150px;
display: none;
}
.stepActive > .stepDesc {
display: inline-block;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="step stepOne stepActive">
<div class="stepNumber">1</div>
<div class="stepDesc">Cart</div>
</div>
<div class="step stepTwo">
<div class="stepNumber">2</div>
<div class="stepDesc">Client data</div>
</div>
<div class="step stepThree">
<div class="stepNumber">3</div>
<div class="stepDesc">Shipping data</div>
</div>
<div class="formStep formStepOne">
Something - tab content
</div>
<div class="formStep formStepTwo">
Something else
</div>
Извините за внешний вид, некоторые косметические КСС здесь отсутствует.
Актуальная проблема: Я хочу добавить кнопку «Далее» прямо под моим «содержанием вкладки». Если мы сейчас на шаге 1, нажатие этой кнопки приведет нас к шагу 2 и так далее. В то же время нужно активировать скрипт «tab menu» - как в фрагменте: закрыть описание другого шага, показать текущее описание и добавить класс «stepActive».
Почти то же самое, что вы можете найти в общих слайдерах: стрелки (next, prev) для перемещения между слайдами, а также «точка-меню» с выделенной точкой.
Да, это именно то, что я хотел для того чтобы достигнуть! Любые идеи, как сделать раздел переключателя лучше? Сейчас он имеет жесткую кодировку, чтобы показать/скрыть, это будет довольно грязно с большим количеством вкладок. Спасибо, м8! :) – ficus
Я удалил в ответ некоторые жестко закодированные классы. Посмотрите на раздел сценария. –