Поочередное выцветание элементов.
Привет.
Есть неcколько div, у которых style = "display: none;" , при нажатии на соответствующие кнопки, они появляются. Как сделать так, чтобы при нажатии на следующую кнопку, предыдущий div исчезал? Заранее спасибо. <biv> <button onclick="$('#div1').fadeIn()"> div1 </button> <button onclick="$('#div2').fadeIn()"> div2 </button> <button onclick="$('#div3').fadeIn()"> div3 </button> </biv> <div id="div1" style = "display: none;"></div> <div id="div2" style = "display: none;"></div> <div id="div2" style = "display: none;"></div> |
Цитата:
На манер текущего твоего кода: <biv> <button onclick="$('#div1').fadeIn()"> div1 </button> <button onclick="$('#div1').fadeOut();$('#div2').fadeIn()"> div2 </button> <button onclick="$('#div2').fadeOut();$('#div3').fadeIn()"> div3 </button> </biv> <div id="div1" style = "display: none;"></div> <div id="div2" style = "display: none;"></div> <div id="div2" style = "display: none;"></div> |
Спасибо за ответ, danik.js.
Ну да, конечно же я опечатался :) А что если div будет не 3 а больше и нажимаем не на первый, второй и третий по очереди, а в любом порядке. Кроме как то что я сделал, как-нибудь по-грамотнее делают? <div> <button onclick="$('.menu ').fadeOut().delay(500);$('.div1').fadeIn()"> div1 </button> <button onclick="$('.menu ').fadeOut().delay(500);$('.div2').fadeIn()"> div2 </button> <button onclick="$('.menu ').fadeOut().delay(500);$('.div3').fadeIn()"> div3 </button> </div> <div class = "menu div1" style = "display: none;"></div> <div class = "menu div2" style = "display: none;"></div> <div class = "menu div2" style = "display: none;"></div> |
Думаю, грамотнее будет добавить :visible
<button onclick="$('.menu:visible').fadeOut().delay(500);$('.div1').fadeIn()"> div1 </button> чтобы команда растворения применялась только к видимому div'у |
Часовой пояс GMT +3, время: 09:27. |