2012-05-02 66 views
1

我編寫了一個基本的手風琴,它使用下一個和上一個按鈕切換窗體中的元素。這位手風琴師按照設計工作,不需要任何編輯。 現在我只需要在指定的手風琴窗格顯示時觸發一個功能。 Senario認爲,即使用戶重新訪問該窗格,觸發的函數也應該只觸發一次。jquery accordian隱藏顯示可見事件觸發器

這讓我對使用jquerys現場活動和/或可視psuedocode如何去做這件事感到十分困惑。

任何direction.help將不勝感激。

回答

0

我不知道你的代碼是什麼樣的,但是假設你在面板變爲活動時有某種回調,並且有一些對錶示該面板的DOM節點的引用,你可以這樣做:

if(! $(panel).data('initialized')) { 
    // initialize panel 
    $(panel).data('initialized', true); 
} 
+0

我是否正確地說,在說淡出效果的回調就足夠了? [http://jsfiddle.net/designmode/AdPWv/](http://jsfiddle.net/designmode/AdPWv/) – designmode

0

我會用獨特的道路使用accordionchange事件,綁定到它,你可以做到這一點

$('.ui-accordion').bind('accordionchange', function(event, ui) { alert('hello world'); }); 

將選擇$(「UI的手風琴」)到你想要的手風琴綁定到。

更新,以應付一次性

在你的方法使用

$('.ui-accordion').unbind('accordionchange'); 

,以確保它只能觸發一次。

+0

我明白這個問題的方式,代碼應該只評估一次*每個面板* –