zoukankan      html  css  js  c++  java
  • 微信小程序-实现渐入渐出动画效果

    实现微信小程序实现渐入渐出动画效果

    App.js 中写入全局方法

    App({
      //渐入,渐出实现 
      show : function(that,param,opacity){
        var animation = wx.createAnimation({
          //持续时间800ms
          duration: 800,
          timingFunction: 'ease',
        });
        //var animation = this.animation
        animation.opacity(opacity).step()
        //将param转换为key
        var json = '{"' + param + '":""}'
        json = JSON.parse(json);
        json[param] = animation.export()
        //设置动画
        that.setData(json)
      },
    
      //滑动渐入渐出
      slideupshow:function(that,param,px,opacity){
        var animation = wx.createAnimation({
          duration: 800,
          timingFunction: 'ease',
        });
        animation.translateY(px).opacity(opacity).step()
        //将param转换为key
        var json = '{"' + param + '":""}'
        json = JSON.parse(json);
        json[param] = animation.export()
        //设置动画
        that.setData(json)
      },
    
      //向右滑动渐入渐出
      sliderightshow: function (that, param, px, opacity) {
        var animation = wx.createAnimation({
          duration: 800,
          timingFunction: 'ease',
        });
        animation.translateX(px).opacity(opacity).step()
        //将param转换为key
        var json = '{"' + param + '":""}'
        json = JSON.parse(json);
        json[param] = animation.export()
        //设置动画
        that.setData(json)
      }
    })

    在页面 index.js 中定义动画

    //index.js
    //获取应用实例
    const app = getApp(); // 获取全局变量
    
    Page({
      data: {},
    
      /**
       * 生命周期函数--监听页面显示
       */
      onShow: function () {
        let that = this;
    // 淡入
        setTimeout(function () {
          app.slideupshow(this, 'slide_up1', 200, 1)
        }.bind(this), 1000);
    
        // 淡出
        setTimeout(function () {
          app.slideupshow(this, 'slide_do1', 0, 0)
        }.bind(this), 1000);
    
      },
    })


    注意:查看上面show函数定义查看参数含义
    第一个参数是当前的页面对象,方便函数setData直接返回数据
    第二个参数是绑定的数据名,传参给setData,详细见上面
    第三个参数是上下滑动的px, translateY() 属性
    第四个参数是需要修改为的透明度,这里是1,  opacity属性

    设置动画的初始样式

    .index{
      opacity: 0; // 透明度数
      transform: translateY(-200px); // 偏移量
    }

    在页面 index.wxml中引入就完成了

    // index.wxml
    <view class="index" animation="{{slide_up1}}"></view>

    原文链接:https://blog.csdn.net/weixin_42917830/article/details/81701125

  • 相关阅读:
    《海思VPSS — 将1920*1080图像通过VPSS缩放旋转成800*1280在LCD上显示》
    《Shell编程实例 —— 自动检测并挂载硬盘》
    《Shell脚本学习 —— 运算符、输入/输出重定向》
    《Shell脚本学习 —— 函数、文件包含》
    《Shell脚本学习 —— 流程控制if、for、while、无限循环、until、case、跳出循环》
    《Shell脚本学习 —— Shell传递参数、echo命令、test命令》
    牛客多校第三场 A—pacm team (4维背包加路径压缩)
    牛客第二场Dmoney
    牛客第二场A-run
    牛客第二场A-run
  • 原文地址:https://www.cnblogs.com/sanyekui/p/12702238.html
Copyright © 2011-2022 走看看