原因:在APP 中,有滚动条的时候,为了操作方便,想在下面点一个按钮直接回到顶部!或者是直接滚动的中间某个位置!
解决方案:
1.在没有scrollView组件的情况下,顶部(或者页面指定位置)添加一个空的div ,设置 id为(比如 top) 可以使用一个a标签href设置为#top,这样就回到那个位置了!这个是html标准的实现方式
或者js代码实现,根据xid获取id ,然后滚动到指定位置:
var id = this.getIDByXID("div的xid"); window.location.hash = "#"+id; 2.使用了scrollView 作为滚动组件,回到顶部的方法是,this.comp('scrollView的xid').scroller.scrollTo(0,0); 回到指定高度的方法是第一个参数中给一个整数,比如this.comp('scrollView的xid').scroller.scrollTo(100,0) 滚动到list某一行的指定位置: Model.prototype.listGoTo = function(rowIndex) { // 根据索引获得HTML ID,使用ID定位 var e = $(me.getElementByXid('listTemplateUl1')).children(); var y0 = e.eq(0).position().top; var yn = e.eq(rowIndex).position().top; me.comp('scrollView1').scroller.scrollTo(yn - y0); };
3.scrollView提供专门的API文档介绍,回到顶部和底部 :
this.comp('scrollView').scrollTo('end')
this.comp('scrollView').scrollTo('top')
评一波