图片src改变闪烁问题

2019-07-06  本文已影响0人  前端里程

遇到一个功能需要每秒切换一个图片显示。
第一次使用了JS动态改变src地址,JS里面用了setInterval每一秒切换一下地址,但每次切换时图片都会闪烁一下,这里可能是我src地址是远程https访问的原因:

<image src='{{curImg}}' ></image>

第二次使用了CSS样式的z-index来控制,图片不再闪烁,JS里面每一秒修改curIndex的值就可以,但我的图片一次有200多个,每次修改curIndex视图层的 curIndex == index都要做运算,导致其他点击事件执行2秒钟后视图层的数据才有响应。

<image wx:for="{{imgList}}" wx:key="{{index}}" src='{{item.url}}' class="{{curIndex == index?'z-index9':'z-index999'}}" ></image>

最后使用了CSS样式position来控制,图片不闪烁了,也没有了延迟。setInterval每秒只要计算position的偏移位置就可以了,这里每个图片都设置了100%宽度,都是横向排列溢出的,只要外层view元素每秒向左移动整个屏幕的宽度就可以了,JS里面真个屏幕的宽度w=750就可以了,不要用微信API去获取屏幕宽度来就算,有BUG。

<view class='banner'  style="position: relative;right: {{position}}rpx;">

  <image wx:for="{{imgList}}" wx:key="{{index}}" src='{{item.url}}' ></image>

</view>
上一篇 下一篇

猜你喜欢

热点阅读