微信小程序实现banner图轮播效果


Posted in Javascript onJune 28, 2020

本文实例为大家分享了微信小程序实现banner图轮播的具体代码,供大家参考,具体内容如下

效果图:

微信小程序实现banner图轮播效果

indicator-active-color="#007aff"//修改选中图片圆点的颜色

js:

const app = getApp()
 
Page({
 data: {
 //-----------模拟banner图-----------
 imgUrls: [
 '/image/1545118381903.jpg',
 '/image/1545118566631.jpg'
 ],
 circular: true,
 //是否显示画板指示点 
 indicatorDots: true,
 //选中点的颜色 
 //是否竖直 
 vertical: false,
 //是否自动切换 
 autoplay: true,
 //自动切换的间隔
 interval: 3000,
 //滑动动画时长毫秒 
 duration: 1000,
 //所有图片的高度 
 imgheights: [],
 //图片宽度 
 imgwidth: 750,
 //默认 
 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 })
 },
 }
})

wxml:

<!-------------首页轮播图----------------- -->
<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='{{imgUrls}}' wx:key="{{index}}">
 <swiper-item>
 <image src="{{item}}" data-id='{{index}}' class="slide-image" mode="widthFix" bindload="imageLoad" />
 </swiper-item>
 </block>
 </swiper>
</view>

wxss:

.swiper image {
 width: 100%;
 height: auto;
}
 
.swiper-image {
 height: 100%;
 width: 100%;
}
 
.slide-image {
 height: 100%;
 width: 100%;
 display: block;
}

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

Javascript 相关文章推荐
JQuery 常用方法基础教程
Feb 06 Javascript
javascript计时器事件使用详解
Jan 07 Javascript
jQuery搜索框效果实现代码(百度关键词联想)
Feb 25 Javascript
angular+bootstrap的双向数据绑定实例
Mar 03 Javascript
详解vue-router 2.0 常用基础知识点之导航钩子
May 10 Javascript
JS+HTML+CSS实现轮播效果
Nov 28 Javascript
通过jquery toggleClass()属性制作文章段落更改背景颜色
May 21 jQuery
jQuery实现form表单序列化转换为json对象功能示例
May 23 jQuery
详解使用element-ui table组件的筛选功能的一个小坑
Nov 02 Javascript
vue实现div拖拽互换位置
Jul 29 Javascript
vue监听浏览器原生返回按钮,进行路由转跳操作
Sep 09 Javascript
JavaScript实现网页计算器功能
Oct 29 Javascript
如何使用VuePress搭建一个类型element ui文档
Feb 14 #Javascript
JavaScript类型相关的常用操作总结
Feb 14 #Javascript
VuePress 快速踩坑小结
Feb 14 #Javascript
使用vuepress搭建静态博客的示例代码
Feb 14 #Javascript
Node.js如何对SQLite的async/await封装详解
Feb 14 #Javascript
VuePress 静态网站生成方法步骤
Feb 14 #Javascript
extract-text-webpack-plugin用法详解
Feb 14 #Javascript
You might like
全国FM电台频率大全 - 10 江苏省
2020/03/11 无线电
php中{}大括号是什么意思
2013/12/01 PHP
PHP常用正则表达式集锦
2014/08/17 PHP
分享PHP源码批量抓取远程网页图片并保存到本地的实现方法
2015/12/01 PHP
PHP实现支持加盐的图片加密解密
2016/09/09 PHP
PHP常用字符串输出方法分析(echo,print,printf及sprintf)
2021/03/09 PHP
Js注册协议倒计时的小例子
2013/06/24 Javascript
jquery插件hiAlert实现网页对话框美化
2015/05/03 Javascript
js 截取或者替换字符串中的数字实现方法
2016/06/13 Javascript
微信小程序 页面滑动事件的实例详解
2017/10/12 Javascript
在vue中实现禁止回退上一步,路由不存历史记录
2020/07/22 Javascript
[07:55]2014DOTA2 TI正赛第三日 VG上演推进荣耀DKEG告别
2014/07/21 DOTA
Python中endswith()函数的基本使用
2015/04/07 Python
python使用PIL模块实现给图片打水印的方法
2015/05/22 Python
python制作抖音代码舞
2019/04/07 Python
CentOS6.9 Python环境配置(python2.7、pip、virtualenv)
2019/05/06 Python
Python 堆叠柱状图绘制方法
2019/07/29 Python
详解如何用python实现一个简单下载器的服务端和客户端
2019/10/28 Python
Django 解决由save方法引发的错误
2020/05/21 Python
Python 列表中的修改、添加和删除元素的实现
2020/06/11 Python
Python selenium键盘鼠标事件实现过程详解
2020/07/28 Python
For Art’s Sake官网:手工制作的奢华眼镜
2018/12/15 全球购物
Europcar澳大利亚官网:全球汽车租赁领域的领导者
2019/03/24 全球购物
品学兼优的大学生自我评价
2013/09/20 职场文书
财务工作个人求职的自我评价
2013/12/19 职场文书
员工工作表现评语
2014/04/26 职场文书
创先争优标语
2014/06/27 职场文书
心得体会的写法
2014/09/05 职场文书
三潭印月的导游词
2015/02/12 职场文书
工作态度怎么写
2015/06/25 职场文书
新郎婚礼致辞
2015/07/27 职场文书
安全教育日主题班会
2015/08/13 职场文书
2016年社区党支部公开承诺书
2016/03/25 职场文书
写作指导:怎么书写竞聘演讲稿?
2019/07/04 职场文书
python基于tkinter实现gif录屏功能
2021/05/19 Python
Oracle查看表空间使用率以及爆满解决方案详解
2022/07/23 Oracle