2010-10-04 36 views
0

假設我正在使用第三方實用程序工具,並且我無法更改那個很酷的代碼。該工具並沒有別的,但如何動態綁定到一個函數,類似於生活

$(this).live('click', function(){ 

this.trigger('custom:callback'); 

}); 

我用它是

$('a').bind('custom:callback', function(){ 
    alert('callback is being invoked'); 
}); 

上面的代碼工作正常的方式。但是,如果我動態創建一個「一」元素,然後我要運行

$('a').bind('custom:callback', function(){ 
    alert('callback is being invoked'); 
}); 

另有第三方工具的回調不工作。

有沒有一種方法來動態設置綁定,以便如果我動態創建'a'元素,那麼我不需要運行代碼。

回答

3

您可以使用.live()與自定義事件爲好,例如:

$('a').live('custom:callback', function(){ 
    alert('callback is being invoked'); 
}); 

這將消除綁定到每個因爲它出現的需要,但如果你要做到這一點,這就是the .livequery() plugin仍然擅長...它看起來像這樣:

$('a').livequery(function() { 
    $(this).bind('custom:callback', function() { 
    alert('callback is being invoked'); 
    }); 
}); 
相關問題