⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 textarea.js

📁 Ext JS是一个创建丰富互联网应用程序的跨浏览器的JavaScrip库。它包含:高效率
💻 JS
字号:
/*
 * Ext JS Library 3.0 Pre-alpha
 * Copyright(c) 2006-2008, Ext JS, LLC.
 * licensing@extjs.com
 * 
 * http://extjs.com/license
 */

/** * @class Ext.form.TextArea * @extends Ext.form.TextField * Multiline text field.  Can be used as a direct replacement for traditional textarea fields, plus adds * support for auto-sizing. * @constructor * Creates a new TextArea * @param {Object} config Configuration options * @xtype textarea */Ext.form.TextArea = Ext.extend(Ext.form.TextField,  {    /**     * @cfg {Number} growMin The minimum height to allow when <tt>{@link Ext.form.TextField#grow grow}=true</tt>     * (defaults to <tt>60</tt>)     */    growMin : 60,    /**     * @cfg {Number} growMax The maximum height to allow when <tt>{@link Ext.form.TextField#grow grow}=true</tt>     * (defaults to <tt>1000</tt>)     */    growMax: 1000,    growAppend : '&#160;\n&#160;',    growPad : Ext.isWebKit ? -6 : 0,    enterIsSpecial : false,    /**     * @cfg {Boolean} preventScrollbars <tt>true</tt> to prevent scrollbars from appearing regardless of how much text is     * in the field (equivalent to setting overflow: hidden, defaults to <tt>false</tt>)     */    preventScrollbars: false,    /**     * @cfg {String/Object} autoCreate <p>A {@link Ext.DomHelper DomHelper} element spec, or true for a default     * element spec. Used to create the {@link Ext.Component#getEl Element} which will encapsulate this Component.     * See <tt>{@link Ext.Component#autoEl autoEl}</tt> for details.  Defaults to:</p>     * <pre><code>{tag: "textarea", style: "width:100px;height:60px;", autocomplete: "off"}</code></pre>     */    // private    onRender : function(ct, position){        if(!this.el){            this.defaultAutoCreate = {                tag: "textarea",                style:"width:100px;height:60px;",                autocomplete: "off"            };        }        Ext.form.TextArea.superclass.onRender.call(this, ct, position);        if(this.grow){            this.textSizeEl = Ext.DomHelper.append(document.body, {                tag: "pre", cls: "x-form-grow-sizer"            });            if(this.preventScrollbars){                this.el.setStyle("overflow", "hidden");            }            this.el.setHeight(this.growMin);        }    },    onDestroy : function(){        Ext.destroy(this.textSizeEl);        Ext.form.TextArea.superclass.onDestroy.call(this);    },    fireKey : function(e){        if(e.isSpecialKey() && (this.enterIsSpecial || (e.getKey() != e.ENTER || e.hasModifier()))){            this.fireEvent("specialkey", this, e);        }    },    // private    onKeyUp : function(e){        if(!e.isNavKeyPress() || e.getKey() == e.ENTER){            this.autoSize();        }        Ext.form.TextArea.superclass.onKeyUp.call(this, e);    },    /**     * Automatically grows the field to accomodate the height of the text up to the maximum field height allowed.     * This only takes effect if grow = true, and fires the {@link #autosize} event if the height changes.     */    autoSize: function(){        if(!this.grow || !this.textSizeEl){            return;        }        var el = this.el;        var v = el.dom.value;        var ts = this.textSizeEl;        ts.innerHTML = '';        ts.appendChild(document.createTextNode(v));        v = ts.innerHTML;        Ext.fly(ts).setWidth(this.el.getWidth());        if(v.length < 1){            v = "&#160;&#160;";        }else{            v += this.growAppend;            if(Ext.isIE){                v = v.replace(/\n/g, '<br />');            }        }        ts.innerHTML = v;        var h = Math.min(this.growMax, Math.max(ts.offsetHeight, this.growMin) + this.growPad);        if(h != this.lastHeight){            this.lastHeight = h;            this.el.setHeight(h);            this.fireEvent("autosize", this, h);        }    }});Ext.reg('textarea', Ext.form.TextArea);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -