由於此代碼應用中發如今連續回車或者退格的狀況下有bug,因此從新寫了作了調整,參照新文css
[1分鐘實現多行文本框[textarea]自動高度jquery 插件]html
####################################################jquery
##############如下內容爲舊文不建議參考#######################this
####################################################spa
<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();