标签:des io ar on art cti ad amp ef
找了一个老外重写的可滑动的 textarea:
Ext.define(‘LeslieTest.view.TextArea‘, { extend : ‘Ext.field.TextArea‘, xtype : ‘scrollTextArea‘, initialize : function() { this.callParent(); this.element.dom.addEventListener( Ext.feature.has.Touch ? ‘touchstart‘ : ‘mousedown‘, this.handleTouchListener = Ext.bind( this.handleTouch, this), false); this.element.dom.addEventListener( Ext.feature.has.Touch ? ‘touchmove‘ : ‘mousemove‘, this.handleMoveListener = Ext.bind( this.handleMove, this), false); this.moveListenersAttached = true; }, destroy : function() { if (this.moveListenersAttached) { this.moveListenersAttached = false; this.element.dom.removeEventListener( Ext.feature.has.Touch ? ‘touchstart‘ : ‘mousedown‘, this.handleTouchListener, false); this.element.dom.removeEventListener( Ext.feature.has.Touch ? ‘touchmove‘ : ‘mousemove‘, this.handleMoveListener, false); this.handleTouchListener = this.handleMoveListener = null; } this.callParent(); }, handleTouch : function(e) { this.lastY = e.pageY; }, handleMove : function(e) { var textArea = e.target; var top = textArea.scrollTop <= 0; var bottom = textArea.scrollTop + textArea.clientHeight >= textArea.scrollHeight; var up = e.pageY > this.lastY; var down = e.pageY < this.lastY; this.lastY = e.pageY; if ((top && up) || (bottom && down)) e.preventDefault(); if (!(top && bottom)) e.stopPropagation(); } });
标签:des io ar on art cti ad amp ef
原文地址:http://www.cnblogs.com/xiaocaoydj/p/4098837.html