微信小程序-带放大效果的轮播图

效果如图

放大效果的轮播图

WXML

  <!-- 轮播图 -->
  <view class='Carousel'>
    <view class="recommend">
      <view class="swiper-container">
        <swiper class="swiper" autoplay="auto" interval="2000" duration="500" bindchange="swiperChange" previous-margin="40px" next-margin="40px" circular="true">
          <block wx:for="{{slider}}" wx:key="unique">
            <swiper-item data-url="{{item.linkUrl}}">
              <image class='{{swiperCurrent==item.imgId?"img_current":"img"}}' src="{{item.picUrl}}" mode="widthFix"></image>
            </swiper-item>
          </block>
        </swiper>
        <!-- 指示点 -->
        <!-- <view class="dots">
          <block wx:for="{{slider}}" wx:key="unique">
            <view class="dot{{index == swiperCurrent ? ' active' : ''}}" bindtap="chuangEvent" id="{{index}}">{{index+1}}</view>
          </block>
        </view> -->
      </view>
    </view>
  </view>

WXSS

.Carousel{
  margin-top: 49px;
  background-color: #fff;
}
.swiper-container{
  position: relative;
}
.swiper-container .swiper{
  padding-top: 8px;
  height: 380rpx;
  text-align: center;
}
swiper-item{
  display: flex;
  align-items: center;
  justify-content: space-around;
}
.swiper-container .swiper .img{
  width: 88%;
  height: 88%;
  border-radius: 10px;
}
.img_current{
  width: 100%;
  height: 100%;
  border-radius: 10px;
}
.swiper-container .dots{
  position: absolute;
  right: 40rpx;
  bottom: 20rpx;
  display: flex;
  justify-content: center;
}
.swiper-container .dots .dot{
  width: 28rpx;
  height: 28rpx;
  margin: 0 10rpx;
  border-radius: 50%;
  background: #fff;
  transition: all .6s;
  font: 300 18rpx/28rpx "microsoft yahei";
  text-align: center;
}
.swiper-container .dots .dot.active{
  background: #f80;
  color:#fff;
}

JS

data: {    
    //轮播图
    slider: [
      { imgId: '0', linkUrl: 1, picUrl: '/images/swiper/swiper_1.png' },
      { imgId: '1', linkUrl: 2, picUrl: '/images/swiper/swiper_2.png' }, 
      { imgId: '2', linkUrl: 3, picUrl: '/images/swiper/swiper_3.png' },
       ],
    swiperCurrent: 0,
    }
    
      /**
   * 轮播图
   */
  swiperChange: function (e) {
    //把切换后当前的index传给<swiper>组件的current属性
    this.setData({
      swiperCurrent: e.detail.current
    })
  },

  //点击指示点切换
  // chuangEvent: function (e) {
  //   this.setData({
  //     swiperCurrent: e.currentTarget.id
  //   })
  // },
  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值