jquery----TextArea高度自適應

jopen 12年前發布 | 45K 次閱讀 jQuery 表單相關jQuery插件 jQuery插件

 //最小高度和最大高度默認
  $("#textarea1").textareaAutoHeight();
  //最大高度為100px
  $("#textarea2").textareaAutoHeight({ maxHeight:100 });
  //最小高度為50px,最大高度為200px
  $("#textarea3").textareaAutoHeight({ minHeight:50, maxHeight:200 });

$.fn.extend({ textareaAutoHeight: function (options) { this._options = { minHeight: 0, maxHeight: 1000 }

    this.init = function () {
        for (var p in options) {
            this._options[p] = options[p];
        }
        if (this._options.minHeight == 0) {
            this._options.minHeight=parseFloat($(this).height());
        }
        for (var p in this._options) {
            if ($(this).attr(p) == null) {
                $(this).attr(p, this._options[p]);
            }
        }
        $(this).keyup(this.resetHeight).change(this.resetHeight)
        .focus(this.resetHeight);
    }
    this.resetHeight = function () {
        var _minHeight = parseFloat($(this).attr("minHeight"));
        var _maxHeight = parseFloat($(this).attr("maxHeight")); 

        if (!$.browser.msie) {
            $(this).height(0);
        }
        var h = parseFloat(this.scrollHeight);
        h = h < _minHeight ? _minHeight :
                    h > _maxHeight ? _maxHeight : h;
        $(this).height(h).scrollTop(h);
        if (h >= _maxHeight) {
            $(this).css("overflow-y", "scroll");
        }
        else {
            $(this).css("overflow-y", "hidden");
        }
    }
    this.init();
}

}); </pre>

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!