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


Posted in Javascript onNovember 22, 2019

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>

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

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

Javascript 相关文章推荐
Javascript 判断 object 的特定类转载
Feb 01 Javascript
Javascript document.referrer判断访客来源网址
May 15 Javascript
关于javaScript注册click事件传递参数的不成功问题
Jul 18 Javascript
浅谈setTimeout 与 setInterval
Jun 23 Javascript
细说webpack源码之compile流程-rules参数处理技巧(1)
Dec 26 Javascript
解决webpack+Vue引入iView找不到字体文件的问题
Sep 28 Javascript
vue: WebStorm设置快速编译运行的方法
Oct 18 Javascript
一文快速详解前端框架 Vue 最强大的功能
May 21 Javascript
js实现ajax的用户简单登入功能
Jun 18 Javascript
详细分析React 表单与事件
Jul 08 Javascript
js实现贪吃蛇小游戏(加墙)
Jul 31 Javascript
解决vue页面刷新,数据丢失的问题
Nov 24 Vue.js
微信小程序实现Swiper轮播图效果
Nov 22 #Javascript
Js代码中的span拼接问题解决
Nov 22 #Javascript
微信小程序商品详情页底部弹出框
Nov 22 #Javascript
小程序实现图片预览裁剪插件
Nov 22 #Javascript
Vue数据双向绑定底层实现原理
Nov 22 #Javascript
Node如何后台数据库使用增删改查功能
Nov 21 #Javascript
vue移动端使用appClound拉起支付宝支付的实现方法
Nov 21 #Javascript
You might like
php下使用SimpleXML 处理XML 文件
2010/02/27 PHP
使用swoole 定时器变更超时未支付订单状态的解决方案
2019/07/24 PHP
yii2.0框架场景的简单使用示例
2020/01/25 PHP
ASP小贴士/ASP Tips javascript tips可以当桌面
2009/12/10 Javascript
jQuery插件原来如此简单 jQuery插件的机制及实战
2012/02/07 Javascript
input 输入框获得/失去焦点时隐藏/显示文字(jquery版)
2013/04/02 Javascript
js 遍历json返回的map内容示例代码
2013/10/29 Javascript
js使用心得分享
2015/01/13 Javascript
JS实现的简洁纵向滑动菜单(滑动门)效果
2015/10/19 Javascript
深入解析jQuery中Deferred的deferred.promise()方法
2016/05/03 Javascript
vuejs2.0运用原生js实现简单的拖拽元素功能示例
2017/02/24 Javascript
jquery实现图片放大点击切换
2017/06/06 jQuery
详解Vue路由History mode模式中页面无法渲染的原因及解决
2017/09/28 Javascript
微信小程序之多文件下载的简单封装示例
2018/01/29 Javascript
vue2.0安装style/css loader的方法
2018/03/14 Javascript
webpack公共组件引用路径简化小技巧
2018/06/15 Javascript
Angular刷新当前页面的实现方法
2018/11/21 Javascript
[41:08]2014 DOTA2国际邀请赛中国区预选赛 HGT VS NE
2014/05/22 DOTA
python smtplib模块自动收发邮件功能(二)
2018/05/22 Python
Python爬虫基础之XPath语法与lxml库的用法详解
2018/09/13 Python
Django模板导入母版继承和自定义返回Html片段过程解析
2019/09/18 Python
Jupyter notebook如何修改平台字体
2020/05/13 Python
Python实现王者荣耀自动刷金币的完整步骤
2021/01/22 Python
John Hardy官方网站:手工设计首饰的奢侈品牌
2017/07/05 全球购物
Farfetch美国:奢侈品牌时尚购物平台
2019/05/02 全球购物
2019年分享net面试的经历和题目
2016/08/07 面试题
会计自我鉴定范文
2013/10/06 职场文书
大学新闻系求职信
2014/06/03 职场文书
售房委托书
2014/08/30 职场文书
学位证书委托书
2014/09/30 职场文书
2014年艾滋病防治工作总结
2014/12/10 职场文书
民主评议党员个人总结
2015/02/13 职场文书
上帝也疯狂观后感
2015/06/09 职场文书
离婚协议书范文2016
2016/03/18 职场文书
八年级作文之感恩
2019/11/22 职场文书
如何利用opencv判断两张图片是否相同详解
2021/07/07 Python