jQuery growfield

联合创作 · 2023-10-02 14:42

Style-independent cross-browser jQuery textarea autogrow plugin

Successfully tested in: FF2 (vista, xp, mac, linux), IE6 (xp), IE7 (vista, xp), Opera 9.2 (xp, mac), Opera 9.5 (vista), Safari 3 (mac, xp).

Comments and fixes are very appreciated.
optional parameters // $(elem).growfield( options )

* auto - bool // default = true // if false, ctrl + up/down are enabled
* animate - bool // default = true
* before(jEvent), after(jEvent) - callbacks // 'this' will be the dom object
* min - integer - height in pixels // default = min ? css.min-height || initial height
* max - integer - height in pixels // maximum size // default = css.max-height || none
* restore - bool - restore original size on blur (and back to growed on focus) // default = false
* speed - integer - animation speed. not a jquery parameter // default = 300 (ms)

additional functions (public interface)

* $(..).increase( step )
* decrease( step )
* growTo( height )
* growToggleAuto( bool )
* growToggleRestore( bool )
* growSetMin( integer )
* growSetMax( integer )

notes

parameters may be set in html attributes // tag attributes have priority

increase and decrease functions are working only in auto mode
opera:

in opera, if you don't have border style for textarea, plugin will set it (opera hides borders in overflow:hidden mode). in auto mode it won't work at all. More than that, opera returns border:2px solid #00000 even if you don't set it. :(
known problems:

after restore (onfocus) with animation textarea sometimes looses cursor. :( // ff2, ie7xp

when reached maximum height, opera will jitter on every keydown :( // opera < 9.5
ctrl + up/down:

in opera and ie this shortcut doesn't work properly. But you may use ctrl + whatever + up/down.

Download here:
http://code.google.com/p/jquery-growfield/downloads/list

浏览 8
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报