开发者

jQuery delegates with plugins

jQuery delegates are great, especially when using with table row click events.

I was wondering i开发者_StackOverflowf it's possible to use delegates with plug-ins as well?

For example if I attach elastic plug-in to every text area, I would do:

$("textarea").elastic();

But how would I attach this plug-in using delegate?


You can cheat. Well, you can in this instance.

You need a delegate-able event that will always occur before the plugin needs to be applied and some means of knowing whether or not it already has been. You can always add that yourself though.

Assuming you are on about this plugin:

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

then, since you always have to focus a textarea before typing/pasting into it, you can do this:

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

I'm assuming you're running jQuery 1.4 at least.


Its really up to the plugin author to write the plugin to utilize event delegation. Live and delegate won't work in applying a plugin.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜