jQuery委托插件

jQuery委托很棒,尤其是在使用表行单击事件时。

我想知道是否可以使用带插件的代表?

例如,如果我将弹性插件附加到每个文本区域,我会这样做:

$("textarea").elastic(); 

但是我如何使用委托附加此插件?

你可以作弊。 嗯,你可以在这种情况下。

您需要一个委托能事件,该事件将始终在需要应用插件之前发生,并且需要一些知道它是否已经存在的方法。 你总是可以自己添加它。

假设您正在使用此插件:

http://www.unwrongest.com/projects/elastic/

那么,因为你总是必须在键入/粘贴之前关注textarea,你可以这样做:

 $('textarea').live( 'focus', function(){ if( !$(this).data('iselastic') ) $(this).data('iselastic', true).elastic(); }) 

我假设你至少运行jQuery 1.4。

它真的取决于插件作者编写插件以利用事件委托。 Live和delegate不适用于应用插件。