2012-03-21 78 views
0

沒有迴應我有一些div可以顯示/隱藏。我想在這些div每次被隱藏時重置窗體,但這似乎不起作用:jquery .on('hide',函數

$('#div_id_1,#div_id_2').on('hide',function(){ 
    $('#form_id_1,#form_id_2').each(function(){ 
     this.reset(); 
    }); 
}); 

此功能永遠不會被觸發。如何我抓住這個「隱藏」事件?

感謝

+0

事件隱藏是一個自定義事件? – Jorge 2012-03-21 16:32:58

+0

你什麼時候隱藏這些事件?我不確定我是否得到了你,但是你不能在'.hide()'中使用回調嗎? – rgin 2012-03-21 16:37:40

回答

2

您將需要要麼把你的復位代碼在你實際做的藏身之處,或簡單地觸發一個'隱藏'事件:

$('#somelink').click(function() { 
    $('#div_id_1').hide().trigger('hide'); 
}); 

這是因爲沒有由jQuery本身觸發的hide事件(請參閱docs)。

+0

是的,我懷疑這一點,我只需要添加'.trigger('hide')'來隱藏函數。 – 2012-03-21 17:05:59

0

您需要手動觸發hide事件。

$('#div_id_1').hide('fast', function() { 
    $(this).trigger('hide'); 
});