2009-10-28 3 views
0

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

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

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

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

  1. переключает DIV = displayDivWhenPageLoads не так, что больше не отображается ДИВ (не дисплей: нет)
  2. Тогда один раз, и только один раз displayDivWhenPageLoads DIV был переключен так, чтобы он больше не был виден, а затем переключил div = displayDivWhenToggledSelected так, чтобы этот div теперь переключился на visibile.

Имеют смысл?

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

ответ

2

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

$('#actionButton').click(function() { 
    $('#displayDivWhenPageLoads').slideUp('slow', function() { 
    $('#displayDivWhenToggledSelected').slideDown('slow'); 
    }); 
}); 
0

Попробуйте

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

function ToggleOther() 
{ 
    $("#displayDivWhenToggledSelected "). slideToggle("slow"); 
}