Проблема с переменной
Проблема следующая:
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:32. |