Проблема с переменной
Проблема следующая:
1. кликаем по Категория 1, затем <<<< 2. кликаем по Категория 2, затем клик result Алерт показывает 1 а потом 2, а нужно только 2
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
<p class="back"><<<<<</p>
<div class="show_1">
<p class="category" data-type="1">Категория 1</p>
<p class="category" data-type="2">Категория 2</p>
<p class="category" data-type="3">Категория 3</p>
</div>
<div class="show_2" style="display: none;">
<p class="result">result</p>
</div>
<script>
$('.back').on('click', function(){
$('.show_1').show();
$('.show_2').hide();
});
$('.category').on('click', function(){
$('.show_2').show();
$('.show_1').hide();
var a = $(this).data('type');
$('.result').on('click', function(){
alert(a);
});
});
</script>
|
Так попробуйте:
var type = 1;
$('.back').on('click', function() {
$('.show_1').show();
$('.show_2').hide();
});
$('.category').on('click', function() {
$('.show_2').show();
$('.show_1').hide();
type = $(this).data('type');
});
$('.result').on('click', function() {
alert(type);
});
ps. строки 4-5 и 9-10 глаза мозолят, их как-то можно объединить ) |
Ваш вариант не работает
|
Цитата:
|
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
<p class="back"><<<<<</p>
<div class="show_1">
<p class="category" data-type="1">Категория 1</p>
<p class="category" data-type="2">Категория 2</p>
<p class="category" data-type="3">Категория 3</p>
</div>
<div class="show_2" style="display: none;">
<p class="result">result</p>
</div>
<script>
var a;
$('.back').on('click', function(){
$('.show_1').show();
$('.show_2').hide();
});
$('.category').on('click', function(){
$('.show_2').show();
$('.show_1').hide();
a = $(this).data('type');
});
$('.result').on('click', function(){
alert(a);
});
</script>
|
Nexus, j0hnik,
Спасибо |
| Часовой пояс GMT +3, время: 10:56. |