Здравствуйте. Сделал плагин анимированного сворачивания/разворачивания текстовых блоков. Все бы хорошо, но при наличии нескольких таких блоков параметр max-height берется с последнего блока, и если некоторые из предыдущих будут больше то раскрываются не полностью, а если меньше  то анимация происходит с небольшой задержкой
(function($) {
  $.fn.openhide=function(options){
	var settings=$.extend({
		'maxH':200,
		'time':500,
		'removeButton':0,
		'hoverClass':false,
	},options)
	this.each(function(i){
		hg=$(this).height()
		if(hg>options.maxH){
			$(this).css({
				'max-height':options.maxH+'px',
				'overflow-y':'hidden'
			}).wrap("<div class='wrapper'></div>")
			$(this).parents(".wrapper").append("<span class='opener'>Раскрыть</span>")
			
			$(this).parents(".wrapper").find(".opener").click(function(){
				opener=$(this)
				div=opener.parents(".wrapper").find("div")
				op=div.hasClass("opened")
				div.animate({
					'max-height':(op?options.maxH:hg)+'px'
				},options.time,function(){
					if(options.removeButton)
						opener.remove()
					else{
						if(op){
							div.removeClass("opened")
							opener.text("Раскрыть")
						}
						else{
							div.addClass("opened")
							opener.text("Свернуть")
						}
					}
				})
			})
			.mouseover(function(){
				if(options.hoverClass)
					$(this).addClass(options.hoverClass)
			})
			.mouseout(function(){
				if(options.hoverClass)
					$(this).removeClass(options.hoverClass)
			})
		}
		
	})
  }
})(jQuery)
опция removeButton - удаление кнопки после разворачивания