Sencha Touch TextArea 支持滑动


Ext.define('Sai.view.TextArea', { extend: 'Ext.form.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(); } });

TextArea ios 支持滑动 

posted @ 2014-12-24 15:00  lanyan  阅读(136)  评论(0编辑  收藏  举报