当前位置:   article > 正文

HarmonyOS入门--swiper组件_swiper duration

swiper duration
  • 前言:

        Swiper为滑动容器,提供切换显示子组件的能力。

  • 属性:

名称 

类型默认值描述
indexnumber0当前显示的子组件的索引值
autoplaybooleanfasle子组件是否自动播放,自动播放状态下,导航点不可操作
intervalnumber3000使用自动播放时播放的时间间隔,单位为ms
indicatorbooleantrue是否启用导航点指示器,默认true
loopbooleantrue是否开启循环滑动
verticalbooleanfalse是否为纵向滑动,纵向滑动时采用纵向滑动的指示器
durationnumber-子组件切换的动画时长
  • 样式

名称类型默认值描述
indicator-color<color>-导航点指示器的填充颜色
indicator-selected-color<color>#ff007dff导航点指示器选中的颜色
indicator-size<length>4px导航点指示器的直径大小
indicator-top/left/right/bottom<length>/<percentage>-导航点指示器在swiper中的相对位置
  • 事件       

名称参数描述
change{ index: currentIndex }当前显示的组件索引变化时触发该事件
rotation{ value: rotationValue }智能穿戴表冠旋转事件触发时的回调
  • 方法

名称参数描述
swipeTo{ index: numer(指定位置)}切换到index位置的子组件
showNext显示下一个子组件

  • 示例

        设置autoplay进行自动播放,,时间间隔interval为2000ms,关闭循环播放loop,

  1. <!-- xxx.hml-->
  2. <div class="container">
  3. <swiper index="1" autoplay="true" interval="2000" indicator="true" digital="true" duration="500"
  4. scrolleffect="fade" loop="false">
  5. <div class="item" style="background-color: #bf45ea;">
  6. <text>item1</text>
  7. </div>
  8. <div class="item" style="background-color: #088684;">
  9. <text>item2</text>
  10. </div>
  11. <div class="item" style="background-color: #7786ee;">
  12. <text>item3</text>
  13. </div>
  14. <div class="item" style="background-color: #c88cee;">
  15. <text>item4</text>
  16. </div>
  17. </swiper>
  18. </div>
  1. /* xxx.css */
  2. .container{
  3. width: 100%;
  4. height: 100%;
  5. flex-direction: column;
  6. background-color: #F1F3F5;
  7. align-items: center;
  8. justify-content: center;
  9. }
  10. swiper{
  11. width: 500px;
  12. height: 500px;
  13. indicator-color: white;
  14. indicator-selected-color: blue;
  15. indicator-size: 40px;
  16. indicator-top: 100px;
  17. overflow: hidden ;
  18. }
  19. .item{
  20. width: 100%;
  21. height: 500px;
  22. }
  23. text{
  24. width: 100%;
  25. text-align: center;
  26. margin-top: 150px;
  27. font-size: 50px;
  28. color: white;
  29. }

实现结果为:item自动播放,到item4终止

  • 案例--轮流播放图片

        

  1. <!-- xxx.hml-->
  2. <div class="container">
  3. <swiper duration="500" indicator="false" id="swiper" onchange="change">
  4. <div class="item" for="item in list">
  5. <image src="{{item.src}}"></image>
  6. </div>
  7. </swiper>
  8. <div class="content">
  9. <div class="content_item {{index == $idx?'actived':''}}" for="item in list" onclick="imageTo({{$idx}})">
  10. <image src="{{item.src}}"></image>
  11. </div>
  12. </div>
  13. </div>
  1. /* xxx.css */
  2. .container{
  3. flex-direction: column;
  4. background-color: #F1F3F5;
  5. align-items: center;
  6. justify-content: center;
  7. width: 100%;
  8. margin-top:100px;
  9. }
  10. swiper{
  11. width: 100%;
  12. height: 500px;
  13. }
  14. .item{
  15. justift-content:center;
  16. width: 100%;
  17. height: 500px;
  18. }
  19. .content{
  20. margin-top: -120px;
  21. width: 70%;
  22. display: flex;
  23. justify-content: center;
  24. height: 100px;
  25. }
  26. .content_item{
  27. padding: 5px;
  28. transform: scale(0.5);
  29. }
  30. .actived{
  31. transform: scale(1);
  32. border: 1px solid #b20937ea;
  33. }
  1. // index.js
  2. export default{
  3. data:{
  4. index:0,
  5. list:[
  6. {src:'common/hzw.png'},
  7. {src:'common/jay.png'},
  8. {src:'common/potter.png'}
  9. ]
  10. },
  11. imageTo(index){
  12. this.index=index;
  13. this.$element('swiper').swipeTo({index:index});
  14. },
  15. change(e){
  16. this.index=e.index;
  17. }
  18. }

结果实现:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/243307
推荐阅读
相关标签
  

闽ICP备14008679号