微信小程序实现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 相关文章推荐
利用ASP发送和接收XML数据的处理方法与代码
Nov 13 Javascript
通过jquery的$.getJSON做一个跨域ajax请求试验
May 03 Javascript
浅谈JavaScript事件的属性列表
Mar 01 Javascript
浅谈javascript alert和confirm的美化
Dec 15 Javascript
JS出现失效的情况总结
Jan 20 Javascript
基于AngularJS实现的工资计算器实例
Jun 16 Javascript
关于js中的鼠标事件总结
Jul 11 Javascript
iview日期控件,双向绑定日期格式的方法
Mar 15 Javascript
element-ui循环显示radio控件信息的方法
Aug 24 Javascript
vue项目中实现图片预览的公用组件功能
Oct 26 Javascript
Vue+Express实现登录状态权限验证的示例代码
May 05 Javascript
vscode 调试 node.js的方法步骤
Sep 15 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
fleaphp crud操作之find函数的使用方法
2011/04/23 PHP
PHP入门教程之表单与验证实例详解
2016/09/11 PHP
php curl 模拟登录并获取数据实例详解
2016/12/22 PHP
php使用gd2绘制基本图形示例(直线、圆、正方形)
2017/02/15 PHP
利用Laravel事件系统如何实现登录日志的记录详解
2017/05/20 PHP
PHP实现git部署的方法教程
2017/12/19 PHP
PHP标准库(PHP SPL)详解
2019/03/16 PHP
Javascript 兼容firefox的一些问题
2009/05/21 Javascript
javascript prototype原型操作笔记
2009/12/07 Javascript
JQuery的Validation插件中Remote验证的中文问题
2010/07/26 Javascript
精通Javascript系列之数值计算
2011/06/07 Javascript
jQuery中innerHeight()方法用法实例
2015/01/19 Javascript
JS模拟并美化的表单控件完整实例
2015/08/19 Javascript
如何实现json数据可视化详解
2016/11/24 Javascript
ionic开发中点击input时键盘自动弹出
2016/12/23 Javascript
简单实现js鼠标跟随效果
2020/08/02 Javascript
JS解决IOS中拍照图片预览旋转90度BUG的问题
2017/09/13 Javascript
vue技术分享之你可能不知道的7个秘密
2018/04/09 Javascript
AngularJS实现动态切换样式的方法分析
2018/06/26 Javascript
JS使用tween.js动画库实现轮播图并且有切换功能
2018/07/17 Javascript
Javascript中绑定click事件的四种方式介绍
2018/10/26 Javascript
vue-form表单验证是否为空值的实例详解
2019/10/29 Javascript
使用Python的Supervisor进行进程监控以及自动启动
2014/05/29 Python
如何将python中的List转化成dictionary
2016/08/15 Python
简单了解Java Netty Reactor三种线程模型
2020/04/26 Python
CSS3用@font-face实现自定义英文字体
2013/09/23 HTML / CSS
CSS3中currentColor关键字的妙用
2016/02/27 HTML / CSS
详解Canvas 实现炫丽的粒子运动效果(粒子生成文字)
2018/02/01 HTML / CSS
出门问问全球官方商城:Tichome音箱和TicWatch智能手表
2017/12/02 全球购物
大学四年的个人自我评价
2014/01/14 职场文书
小学教学随笔感言
2014/02/26 职场文书
超市开业庆典策划方案
2014/05/14 职场文书
2015年五一劳动节演讲稿
2015/03/18 职场文书
python tkinter模块的简单使用
2021/04/07 Python
解决Navicat for MySQL 连接 MySQL 报2005错误的问题
2021/05/29 MySQL
学会Python数据可视化必须尝试这7个库
2021/06/16 Python