文章详细

热点文章

最新评论

  • 2016-5-20 12:10:37yummy

    博主,有这个连连看游戏的源码么?太强了

  • 2016-1-8 12:21:02天之蓝

    谢谢楼主共享,正好有用到

  • 2016-1-5 14:59:35远走

    中午乱码不需要修改源码。 1.生成乱码只需在调用MultiFormatWriter.encode()方法的时候把utf8编

  • 2016-1-5 14:59:22远走

    中午乱码不需要修改源码。 1.生成乱码只需在调用MultiFormatWriter.encode()方法的时候把utf8编

  • 2015-12-21 11:07:42mhd

    您好,谢谢您的分享。 我想用flash分别采集两个或两个以上麦克风传进来声音,这个能实现吗?

  • 2015-11-17 17:01:50上品户外

    顶一下 谢谢博主分享

  • 2015-11-5 9:44:55自由职业

    加油,看好你哦。

  • 2015-9-12 22:46:02大雁

    大牛的经验值得学习,烦请大牛发一份源码个到邮箱,多谢

  • 2015-7-17 16:27:38bobojs

    大哥 你太牛了~~ 我以前 改过老版本的 zxing 中文乱码,网上找的 就能解决~用了 zxing 2.2 很多代码都不一

  • 2015-7-4 16:06:32中山婚纱摄影

    学习了,不错

jQuery插件之Textarea自动长高

 发布日期:2014-3-9 10:27:35 点击:297 回复:3

做一个小项目,要用到Textarea自动长高的效果,以前做过这个效果,方法是绑定keyup事件,根据字体大小和行高,以及换行符的个数计算实时高度。但是,对于分行短的可以,长篇的就有问题了。于是百度了下,找到一篇文章,方法是建一个隐藏textarea,根据scrollHeight来获取高度。这方法不错。不过,既然是scrollHeight可以获取实时高度,为什么还要新建一个呢?其实这是为了兼容高度减小的效果,scrollHeight最小高度总是textarea自身的高度,所以,根据自身的scrollHeight就只能增长,不能减少。

看了下代码,效果虽然达到了,考虑不够全面,没考虑到布局上需求textarea最小高度的问题,代码里设定了最小高度是20,另外,没考虑textarea样式中的字体和行高,所以不太精确。基于这些问题,作了修正,写了个jQuery插件出来,特此共享

 

jQuery.fn.extend({
	'autoHeight':function(){
		this.keyup(function(){
			var minHeight=40;
			if(!$(this).attr('min-height')){
				minHeight=$(this).innerHeight();
				$(this).attr('min-height',minHeight);
			}else{
				minHeight=$(this).attr('min-height');
			}
			if($("#_hidetextarea").length<=0){
				$("body").append('<textarea id="_hidetextarea" style="visibility:hidden;height:0;border:0;padding:0;margin:0;display:none;"></textarea>');
			}
			var mh=$("#_hidetextarea");
			mh.css({display:'',width:$(this).width(),'fontSize':$(this).css('fontSize'),'lineHeight':$(this).css('lineHeight')}).val($(this).val());
			$(this).css("height",Math.max(minHeight,mh[0].scrollHeight));
			mh.css('display','none');
		});
	}
});

 

我来评论

请填写您的称呼

   

最新评论