编写实现多行文本框[textarea]自动高度jquery 插件


技术分享

<div class="form-group">
	<label class="col-sm-3 control-label no-padding-right" for="form-field-5"> 内容</label>
	<div class="col-sm-9">
		<textarea class="col-sm-8" id="form-field-5" placeholder="请输入内容..."></textarea>
	</div>
</div>
jQuery.extend({
	textareaAutosize_dc: function() {
		$("textarea").on("keyup", function(e) {
			var currentEnterCount = $(this).val().split("\n").length;
			var lineHeight = Number($(this).css("line-height").replace("px", ""));

			var enterCount = $(this).attr("enterCount");
			if (currentEnterCount < enterCount && enterCount != undefined) {
				//每行减掉固定行高
				$(this).height($(this).height() - lineHeight);
			} else if (currentEnterCount > enterCount) {
				//每行加入固定行高
				$(this).height($(this).height() + lineHeight);
				$(this).attr("enterCount", currentEnterCount);
			}
			//记录当前行高
			$(this).attr("enterCount", currentEnterCount);
		});
	}
});
//调用自动高度
$.textareaAutosize_dc();


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。