超简单的微信小程序轮播图

 更新时间:2021年04月21日 11:14:31   作者:大灰狼吃小白兔  
这篇文章主要为大家详细介绍了超简单的微信小程序轮播图,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

Tips:微信小程序可以在HbuilderX用HTML标签(如Ddiv、span等)写前端代码,也可以用微信小程序语法写(view、swiper标签),然后npm run dev编译后,在微信开发者工具里面导入该项目,就可以调试项目,查看效果。

效果图:

微信小程序实现轮播图,本例是在*.wpy页面开发(该页面的temlate内容对应小程序的wxml,style样式对应小程序的wxss,script对应小程序的js文件,config对应小程序的json文件)

<style type="less" scoped="scoped">
  .swiper image {
   width: 100%;
   height: auto;
 }
 
  .swiper-image {
   height: 100%;
   width: 100%;
  }
 
  .slide-image {
   height: 100%;
   width: 100%;
   display: block;
  }
</style>
<template>
   <view class="swiper">
    <swiper indicator-dots="{{indicatorDots}}" vertical="{{vertical}}" autoplay="{{autoplay}}" duration="{{duration}}" interval="{{interval}}" indicator-active-color="#007aff" bindchange="bindchange" circular="{{circular}}"
      style="height:{{imgheights[current]}}rpx;">
      <block wx:for="{{GoodsDatas.imgshow}}" wx:for-key="{{index}}" wx:for-item="image">
        <swiper-item>
          <image src="{{image.img}}" data-id="{{index}}" class="slide-image" mode="widthFix" bindload="imageLoad" />
        </swiper-item>
       </block>
     </swiper>
   </view>
</template>
<script>
 import wepy from '@wepy/core'
 wepy.page({
  data: {
   circular: true,
   //是否显示画板指示点,根据图片数量自动生成多少个圆点
   indicatorDots: true,
   //选中点的颜色
   //是否竖直
   vertical: false,
   //是否自动切换
   autoplay: true,
   //自动切换的间隔
   interval: 3000,
   //滑动动画时长毫秒
   duration: 1000,
   //所有图片的高度
   imgheights: [],
   //图片宽度
   imgwidth: 320,
   //默认
   current: 0
  },
  imageLoad: function(e) { //获取图片真实宽度
   var imgwidth = e.detail.width,
    imgheight = e.detail.height,
    //宽高比
    ratio = imgwidth / imgheight;
   console.log(imgwidth, imgheight)
   //计算的高度值
   var viewHeight = 750 / ratio;
   var imgheight = viewHeight;
   var imgheights = this.data.imgheights;
   //把每一张图片的对应的高度记录到数组里
   imgheights[e.target.dataset.id] = imgheight;
   this.setData({
    imgheights: imgheights
   })
  },
  bindchange: function(e) {
   // console.log(e.detail.current)
   this.setData({
    current: e.detail.current
   })
  }
 })
</script>

将代码粘过去之后,只需要修改循环对象为图片数据就可以了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 浅聊一下为什么能用RxJS取代Redux

    浅聊一下为什么能用RxJS取代Redux

    本文我们将和大家浅聊一下为什么能用RxJS取代Redux,RxJS 在现在的前端用比较少,但是 RxJS 作为响应式和函数式编程的集大成者,似乎被前端开发者遗忘,可能是学习难度大,可能是有更加方便的解决方案,需要的朋友可以参考下
    2024-02-02
  • JavaScript实现点击改变图片形状(transform应用)

    JavaScript实现点击改变图片形状(transform应用)

    这篇文章主要为大家详细介绍了JavaScript实现点击改变图片形状,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-04-04
  • javscript 数组扁平化的实现

    javscript 数组扁平化的实现

    这篇文章主要介绍了javscript 数组扁平化的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • JS实现类似百叶窗下拉菜单效果

    JS实现类似百叶窗下拉菜单效果

    百叶窗下拉菜单效果非常棒,今天小编给大家分享一段js代码实现类似百叶窗下拉菜单效果,需要的朋友参考下
    2016-12-12
  • 微信公众号h5使用微信支付及支付宝支付的步骤(前端)

    微信公众号h5使用微信支付及支付宝支付的步骤(前端)

    微信H5支付是一种支付解决方案,主要适用于商户在微信客户端外的移动端网页上展示商品或服务的场景,这篇文章主要给大家介绍了关于微信公众号h5使用微信支付及支付宝支付(前端)的相关资料,需要的朋友可以参考下
    2024-07-07
  • 利用fecha进行JS日期处理

    利用fecha进行JS日期处理

    这篇文章主要介绍的是如何利用fecha进行JS日期处理,在日常项目中,经常会碰到日期处理的需求,这种需求千奇百怪,而且往往经常变化。虽然js提供了原生的Date方法供我们选择,但一些复杂的日期时间处理起来往往力不从心。下面通过这篇文章来一起学习学习吧。
    2016-11-11
  • JavaScript中Webpack的使用教程

    JavaScript中Webpack的使用教程

    Webpack 是一个前端资源加载/打包工具。它将根据模块的依赖关系进行静态分析,然后将这些模块按照指定的规则生成对应的静态资源,这篇文章主要介绍了JavaScript中Webpack的使用,需要的朋友可以参考下
    2021-10-10
  • eval与window.eval的差别分析

    eval与window.eval的差别分析

    eval与window.eval的差别分析,学习js的朋友可以了解下。
    2011-03-03
  • 页面中js执行顺序

    页面中js执行顺序

    页面中js的执行顺序:在页面的head标签中添加一段js代码,在页面的尾部也就是</body>之前添加一段代码,然后在body的onload事件中引用一个函数,此三者的执行顺序如何?
    2009-11-11
  • JS实现骰子3D旋转效果

    JS实现骰子3D旋转效果

    这篇文章主要为大家详细介绍了JS实现骰子3D旋转效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-10-10

最新评论