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


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 面向对象的技术创建高级 Web 应用程序
Feb 25 Javascript
js window.onload 加载多个函数和追加函数详解
Jan 08 Javascript
jquery 表格排序、实时搜索表格内容(附图)
May 19 Javascript
教你在heroku云平台上部署Node.js应用
Jul 30 Javascript
jQuery获得指定元素坐标的方法
Apr 14 Javascript
JavaScript中的时间处理小结
Feb 24 Javascript
ashx文件获取$.ajax()方法发送的数据
May 26 Javascript
JavaScript prototype属性详解
Oct 25 Javascript
Vue中的v-for指令不起效果的解决方法
Sep 27 Javascript
jQuery使用$.extend(true,object1, object2);实现深拷贝对象的方法分析
Mar 06 jQuery
django中使用vue.js的要点总结
Jul 07 Javascript
简单实现节流函数和防抖函数过程解析
Oct 08 Javascript
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实现专业获取网站SEO信息类实例
2015/04/02 PHP
PHP如何使用JWT做Api接口身份认证的实现
2020/02/03 PHP
PHP pthreads v3使用中的一些坑和注意点分析
2020/02/21 PHP
某页码显示的helper 少量调整,另附js版
2010/09/12 Javascript
前端学习笔记style,currentStyle,getComputedStyle的用法与区别
2016/05/28 Javascript
基于jQuery实现照片墙自动播放特效
2017/01/12 Javascript
纯js三维数组实现三级联动效果
2017/02/07 Javascript
关于前后端json数据的发送与接收详解
2017/07/30 Javascript
使用 vue.js 构建大型单页应用
2018/02/10 Javascript
实例详解BootStrap的动态模态框及静态模态框
2018/08/13 Javascript
小程序实现列表删除功能
2018/10/30 Javascript
javascript防抖函数debounce详解
2019/06/11 Javascript
js代码实现轮播图
2020/05/04 Javascript
Vuex中的Mutations的具体使用方法
2020/06/01 Javascript
微信小程序实现翻牌抽奖动画
2020/09/21 Javascript
python抓取某汽车网数据解析html存入excel示例
2013/12/04 Python
PyQt5每天必学之单行文本框
2018/04/19 Python
python如何爬取个性签名
2018/06/19 Python
python numpy中cumsum的用法详解
2019/10/17 Python
Python for循环与getitem的关系详解
2020/01/02 Python
记一次python 爬虫爬取深圳租房信息的过程及遇到的问题
2020/11/24 Python
CSS3教程(7):CSS3嵌入字体
2009/04/02 HTML / CSS
CSS3实现歌词进度文字颜色填充变化动态效果的思路详解
2020/06/02 HTML / CSS
html如何对span设置宽度
2019/10/30 HTML / CSS
园林施工员岗位职责
2013/12/11 职场文书
工作过失检讨书
2014/02/23 职场文书
高中军训感言600字
2014/03/11 职场文书
毕业典礼演讲稿
2014/05/13 职场文书
拓展策划方案
2014/06/03 职场文书
升学宴演讲稿
2014/09/01 职场文书
实习证明格式范文
2014/10/14 职场文书
2015毕业生实习工作总结
2014/12/12 职场文书
文明单位汇报材料
2014/12/24 职场文书
不会写演讲稿,快来看看这篇文章!
2019/08/06 职场文书
Java spring定时任务详解
2021/10/05 Java/Android
Golang使用Panic与Recover进行错误捕获
2022/03/22 Golang