2010-11-09 98 views
0

當我使用像這樣一個jQuery函數,jQuery回調語法佈局?

jQuery('.mediaContainer').dialog({ width: 500, height:500}); 

如何設置回調?我會在哪裏放置它?

感謝

+0

這要看什麼'.dialog()'是。它是什麼樣的插件?任何文檔? – Harmen 2010-11-09 19:54:34

+0

@Harmen,['對話框()'](http://jqueryui.com/demos/dialog/)是從jQuery用戶界面,顯然(與感謝@Surreal夢)。 – 2010-11-09 19:58:50

+0

@大衛,我想通了我的意見後,然後我加入了jQuery UI的標籤;)需要 – Harmen 2010-11-09 19:59:49

回答

1

對話框中有幾個事件可以設置。你可以在這裏看到他們:

http://jqueryui.com/demos/dialog/#event-close

比如設置一個函數來關閉運行:

$(".mediaContainer").dialog({ 
    close: function(event, ui) { //do stuff } 
}); 

有一些事件,你可以用:beforeClose,開放,突出重點,的dragstart ,resizeStart,resize,resizeStop和close。每個事件都可以觸發一個回調函數,所以你實際上有很多控制權。

+0

例如,我會在even或ui參數中放置什麼? – Adamski 2010-11-09 20:10:20

+0

保持原樣,這是關於事件本身被傳遞給函數的信息。您可以在這裏閱讀有關事件對象的更多信息:http://api.jquery.com/category/events/event-object/和一個ui對象。我很確定這兩個都是可選的。 – 2010-11-09 20:48:07

0

通常它會出現在最後的哪種方法你想插入回撥到的參數,例如:

jQuery('.mediaContainer').dialog({ width: 500, height:500}, 
    function(){ 
     // callback stuff here. 
    }); 

這假定.dialog()是某種形式的插件,或函數,將,或可以,接受回撥。要使用標準的jQuery功能(animate()):

$(this).animate({'opacity': 1, 'height': '200px'}, 500, function(){ 
    // callback stuff. 
});