JQuery: переключить вопрос

Как запустить событие переключения JQuery один раз, и только после того, как другое событие переключения JQuery было завершено?

У меня есть следующее:

  • У меня есть <div id="displayDivWhenPageLoads">...</div> - этот DIV отображается (виден) при загрузке веб-страницы.
  • У меня также есть <div id="displayDivWhenToggledSelected">...</div> — этот DIV скрыт (display:none) при первой загрузке веб-страницы.

Что я хочу сделать, так это то, что когда кто-то нажимает мою кнопку переключения действия JQuery, это

  1. переключает div=displayDivWhenPageLoads так, что div больше не отображается (display:none)
  2. Затем один и только один раз DIV displayDivWhenPageLoads был переключен так, что он больше не виден, затем переключился div=displayDivWhenToggledSelected, чтобы этот div теперь стал видимым.

Есть смысл?

Я просматривал API http://docs.jquery.com/Effects/slideToggle#speedcallback, и мне просто не ясно, как запустить второй переключатель после завершения первого переключения.


person Tedi    schedule 28.10.2009    source источник


Ответы (2)


Думаю, я следую тому, о чем вы просите. Вам нужно использовать функции обратного вызова. Попробуй это:

$('#actionButton').click(function() {
  $('#displayDivWhenPageLoads').slideUp('slow', function() {
    $('#displayDivWhenToggledSelected').slideDown('slow');
  });
});
person Luke Bennett    schedule 28.10.2009

Попробуй это

 $("#actionButton").click(function(){  
  $("#displayDivWhenPageLoads"). slideToggle({
    speed:"slow",
    callback : "ToggleOther"
  })
  return false;
 })

function ToggleOther()
{
  $("#displayDivWhenToggledSelected "). slideToggle("slow");
}
person tuanvt    schedule 28.10.2009