微信小程序实现点击卡片 翻转效果


Posted in Javascript onSeptember 04, 2019

动画效果:

 微信小程序实现点击卡片 翻转效果 

wxml:

<view class='main'>
  <!--正面的框 -->
  <view class="box b1" animation="{{animationMain}}" bindtap='rotateFn' data-id="1" >
   <image src=""></image>
  </view>
  <!--背面的框 -->
  <view class="box b2" animation="{{animationBack}}" bindtap='rotateFn' data-id="2">
   <image src=""></image>
  </view>
</view>

wxss: 

.main {
 position: absolute;
 top: 50%;
 left: 50%;
 width: 300px;
 height: 300px;
 transform: translate(-50%,-50%);
 -webkit-perspective: 1500;//子元素获得透视效果 
 -moz-perspective: 1500;
}
 
.box {
 position: absolute;
 top: 0;
 left: 0;
 width: 300px;
 height: 300px;
 transition: all 1s;
 backface-visibility: hidden;
 border-radius: 10px;
 cursor: pointer;
}
.box image{
 border-radius: 10px;
 width: 100%;
 height: 100%;
}
.b1{
 background:skyblue;
}
.b2 {
 background:tomato;
 transform: rotateY(-180deg);
}
js: 
Page({
 data: {
  animationMain:null,//正面
  animationBack:null,//背面
 },
 rotateFn(e) {
  var id = e.currentTarget.dataset.id
  this.animation_main = wx.createAnimation({
    duration:400,
    timingFunction:'linear'
   })
   this.animation_back = wx.createAnimation({
    duration:400,
    timingFunction:'linear'
   })
  // 点击正面
 
  if (id==1) {
   this.animation_main.rotateY(180).step()
   this.animation_back.rotateY(0).step()
   this.setData({
    animationMain: this.animation_main.export(),
    animationBack: this.animation_back.export(),
   })
  }
  // 点击背面
  else{
   this.animation_main.rotateY(0).step()
   this.animation_back.rotateY(-180).step()
   this.setData({
    animationMain: this.animation_main.export(),
    animationBack: this.animation_back.export(),
   })
  }
 },
})

总结

以上所述是小编给大家介绍的微信小程序实现点击卡片 翻转效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
js 多浏览器分别判断代码
Apr 01 Javascript
基于jquery实现的一个选择中国大学的弹框 (数据、步骤、代码)
Jul 26 Javascript
javascript中定义私有方法说明(private method)
Jan 27 Javascript
jquery数组封装使用方法分享(jquery数组遍历)
Mar 25 Javascript
JS实现来回出现文字的状态栏特效代码
Oct 31 Javascript
移动端点击图片放大特效PhotoSwipe.js插件实现
Aug 25 Javascript
vue插件tab选项卡使用小结
Oct 27 Javascript
VUE axios发送跨域请求需要注意的问题
Jul 06 Javascript
JS实现的简单四则运算计算器功能示例
Sep 27 Javascript
javascript代码优化的8点总结
Jan 29 Javascript
Vue 实现对quill-editor组件中的工具栏添加title
Aug 03 Javascript
Vue2.0搭建脚手架
Mar 13 Vue.js
layui实现tab的添加拒绝重复的方法
Sep 04 #Javascript
Layui 导航默认展开和菜单栏选中高亮设置的方法
Sep 04 #Javascript
微信小程序官方动态自定义底部tabBar的例子
Sep 04 #Javascript
layerui代码控制tab选项卡,添加,关闭的实例
Sep 04 #Javascript
layui 表单标签的校验方法
Sep 04 #Javascript
解决layui 表单元素radio不显示渲染的问题
Sep 04 #Javascript
对layer弹出框中icon数字参数的说明介绍
Sep 04 #Javascript
You might like
php下将XML转换为数组
2010/01/01 PHP
使用cookie实现统计访问者登陆次数
2013/06/08 PHP
如何用php获取文件名后缀
2013/06/09 PHP
php实现的mongodb操作类实例
2015/04/03 PHP
PHP控制前台弹出对话框的实现方法
2016/08/21 PHP
php实现微信支付之退款功能
2018/05/30 PHP
jQuery学习5 jQuery事件模型
2010/02/07 Javascript
一些有用的JavaScript和jQuery的片段分享
2011/08/23 Javascript
js页面跳转的问题(跳转到父页面、最外层页面、本页面)
2013/08/14 Javascript
js 中的switch表达式使用示例
2020/06/03 Javascript
详解JavaScript对象序列化
2016/01/19 Javascript
jQuery头像裁剪工具jcrop用法实例(附演示与demo源码下载)
2016/01/22 Javascript
JS实现“隐藏与显示”功能(多种方法)
2016/11/24 Javascript
jQuery将表单序列化成一个Object对象的实例
2016/11/29 Javascript
原生js 封装get ,post, delete 请求的实例
2017/08/11 Javascript
react-native-fs实现文件下载、文本存储的示例代码
2017/09/22 Javascript
vue-auto-focus: 控制自动聚焦行为的 vue 指令方法
2018/08/25 Javascript
Vue快速实现通用表单验证的方法
2020/02/24 Javascript
原生js实现弹窗消息动画
2020/11/20 Javascript
Python爬虫代理IP池实现方法
2017/01/05 Python
深入理解Python 关于supper 的 用法和原理
2018/02/28 Python
wx.CheckBox创建复选框控件并响应鼠标点击事件
2018/04/25 Python
使用pyqt5 tablewidget 单元格设置正则表达式
2019/12/13 Python
Python urllib.request对象案例解析
2020/05/11 Python
python 用Matplotlib作图中有多个Y轴
2020/11/28 Python
html5的新玩法——语音搜索
2013/01/03 HTML / CSS
加拿大当代时尚服饰、配饰和鞋类专业零售商和制造商:LE CHÂTEAU
2017/10/06 全球购物
黄色火烈鸟:De Gele Flamingo
2019/03/18 全球购物
应届毕业生应聘自荐信
2013/12/07 职场文书
社区学雷锋活动策划方案
2014/01/30 职场文书
产品生产计划书
2014/05/07 职场文书
伦敦奥运会口号
2014/06/13 职场文书
公益广告标语
2014/06/19 职场文书
2014年领班工作总结
2014/11/25 职场文书
2015元旦联欢晚会结束语
2014/12/14 职场文书
毕业典礼致辞
2015/07/29 职场文书