背景图片切换实现轮播效果,并解决抖动问题
2017-12-14 16:17
549 查看
应用场景
页面需要做持续性图片切换的效果。考虑到页面的性能消耗,采用css3控制一张sprite背景图切换来实现效果。部分代码展示
这里是一个宽高比2:1的图片.want-club { position: relative; width: 36%; height: 0; padding-bottom: 36%; background-image: url(../assets/images/map/bg-hotkid01.png); background-repeat: no-repeat; background-size: 200%; } .toggle-bg { animation: toggle-bg 1s steps(2) infinite; } @keyframes toggle-bg { 0% { background-position: 0 0; } 100% { background-position: 200% 0%; } }
发现问题
当sprite背景图切换的时候,发现偶尔会有两张图片位置对不上,导致图片轻微抖动。这是由于节点宽度使用百分比所导致的。取得的宽度数值含有一个小数,会影响页面背景图的移动偏差
解决办法
用js取整,重新赋值它的宽度就好了。首先在页面节点渲染好后,用js获取容器当前的宽度,然后使用Math.round()取整后重新给容器赋值宽度。我的问题就是这样解决的
相关文章推荐
- android 实现ImageView按压效果和解决背景图片拉申问题
- 原生js实现图片层叠轮播切换效果
- jQuery轮播图效果+ bxCarousel实现图片滚动切换效果+Mootools Videobox实现视频图片弹出类lightbox效果
- jQuery插件Flexslider实现图片轮播、图文结合滑动切换效果
- 关于使用图片轮播插件无法实现效果的问题
- js切换导航菜单背景图片时的闪屏问题解决
- Android中使用ImageViewSwitcher实现图片切换轮播导航效果
- JS原生实现图片轮播切换效果
- 原生js实现图片层叠轮播切换效果
- [Javascript] 解决 IE6 中 png 图片背景不支持透明效果的问题
- jQuery插件Flexslider实现图片轮播、图文结合滑动切换效果
- 自定义TabHost实现背景图片随选项卡切换滑动效果
- 用户上传图片后实现图片预览效果(解决fakepath路径问题)
- swipe.js工具包实现手机web滑动轮播效果存在jQuery对象不能使用问题并解决(个人项目经验)
- js实现淘宝首页图片轮播效果(修正图片滚动顺序的问题)
- selector实现点击图片切换(解决常见的点击无效问题)
- 原生JS实现图片轮播切换效果
- 纯js实现背景图片切换效果代码
- JS图片轮播切换效果实现
- 关于使用图片轮播插件无法实现效果的问题