最近作了一个项目,不是蛮复杂,可是有些知识点能够分享下,先上图html
由于4M的限制 因此图片有点模糊,你们凑合着看哈,首先说到这个刷新按钮 git
一、刷新按钮 添加旋转动画很简单github
@-webkit-keyframes rotate
{web
from {transform: rotate(0deg);} to {transform: rotate(360deg);}
}api
animation:rotate 0.8s linear infinite;ide
这样就能够实现 按钮的旋转了动画
但接下来会有问题:一、旋转的过程当中其余的元素变得模糊 二、还有还会引发父级的高度变化this
解决方案:spa
transform:translate3d( 0, 0, 0);
z-index: 1;3d
亲测有效!
二、局部滚动better-scroll
用法API参考:http://ustbhuangyi.github.io/...
说说遇到的问题:
(1)个人项目里面,点击筛选按钮,会有一个侧边栏的列表展现,因此我进页面就请求列表,生成筛选的列表,并建立了scroll 对象,问题就是 当我显示和隐藏侧边栏的列表的时候,scroll由于scrollerHeight丢失,而会出现卡顿前几秒不滚动的现象。
针对这个问题:我想到的是,请求数据不在一进页面而是 点击按钮之后 请求接口 建立scroll对象而且在 this.$nextTick 里面建立
this.$nextTick(()=>{ this.sideBarScroll = new BScroll("#sideBar_scroller",{ scrollY: true, bounce:false, click: true }); });
(2)上述那么作了之后会发现一个问题,每次显示侧边栏就建立一个scroll对象 确定是不行的,肉眼能够看到的问题时就 会有多个滚动条累计在一块儿 也就是生成了多个scroll对象
解决方案:
this.$nextTick(()=>{ if(!this.sideBarScroll){ this.sideBarScroll = new BScroll("#sideBar_scroller",{ scrollY: true, scrollbar:{ fade:false, interactive:false }, bounce:false, click: true }); } else{ this.sideBarScroll.refresh(); } })
好啦 先分享这么多,但愿对你们有帮助!