Home WeChat Applet Mini Program Development Mini program development of microphone animation effect code for zooming in and out

Mini program development of microphone animation effect code for zooming in and out

Mar 20, 2017 pm 03:31 PM
Mini program development

I want to make a voice recorder, but the first step is to get stuck on the microphone animation .

First upload the gif. Complain again.

Mini program development of microphone animation effect code for zooming in and out

##① The sound wave in the above gif The animation is a semi-finished product. There is no loop playback. I searched for a long time in the development documentation of the WeChat applet, but could not find the parameter setting of the loop mode. Use setInterval () does not execute the animation. I found this line at the bottom of WeChat Mini Program Document Animation. Can this pot be thrown out?

ps: If any students can realize animation loop, please tell me.

Mini program development of microphone animation effect code for zooming in and out

##② There is a frame animation inside the microphone. Without front-end foundation, I can only make do with non-mainstream methods.

Use wx:if{{}} to determine whether the value defined in js is equal to the number corresponding to the image to control the display and hiding of the image. There should be a better method in css. My css foundation is not strong. I won’t go into details.

Code

1. index.w
xml

<!--index.wxml-->  
<view  class="voice-style" bindtap="startSpeak">  
<image class="bg-style" src="../../images/voice_icon_speaking_bg_normal.png" ></image>  
<image class="bg-style" animation="{{spreakingAnimation}}" src="../../images/voice_video_loading_0.png"></image>  
<image class="bg-style" animation="{{spreakingAnimation_1}}" src="../../images/voice_video_loading_0.png"></image>  
<image class="bg-style" animation="{{spreakingAnimation_2}}" src="../../images/voice_video_loading_0.png"></image>  
<image class="sound-style" src="../../images/voice_icon_speech_sound_1.png" ></image>  
<image wx:if="{{j==2}}" class="sound-style" src="../../images/voice_icon_speech_sound_2.png" ></image>  
<image wx:if="{{j==3}}" class="sound-style" src="../../images/voice_icon_speech_sound_3.png" ></image>  
<image wx:if="{{j==4}}" class="sound-style" src="../../images/voice_icon_speech_sound_4.png" ></image>  
<image wx:if="{{j==5}}"class="sound-style" src="../../images/voice_icon_speech_sound_5.png" ></image>  
</view>
Copy after login

2. index .js

//index.js  
//获取应用实例  
var app = getApp()  
Page({  
  data: {  
    spreakingAnimation: {},//放大动画  
    j: 1,//帧动画初始图片  
    isSpeaking: false,//是否在录音状态  
  },  
  onLoad: function () {  
  },  
  //点击开始说话  
  startSpeak: function () {  
    var _this = this;  
    if (!this.data.isSpeaking) {  
      speaking.call(this);  
      this.setData({  
        isSpeaking: true  
      })  
    } else {  
      //去除帧动画循环  
      clearInterval(this.timer)  
      this.setData({  
        isSpeaking: false,  
        j: 1  
      })  
    }  
  },  
})  
  
  
function speaking() {  
  //话筒帧动画  
  var i = 1;  
  this.timer = setInterval(function () {  
    i++;  
    i = i % 5;  
    _this.setData({  
      j: i  
    })  
    return  
  }, 200);  
  //波纹放大,淡出动画  
  var _this = this;  
  var animation = wx.createAnimation({  
    duration: 1000  
  })  
  animation.opacity(0).scale(3, 3).step();//修改透明度,放大  
  this.setData({  
    spreakingAnimation: animation.export()  
  })  
setTimeout(function(){  
    //波纹放大,淡出动画  
  var animation = wx.createAnimation({  
    duration: 1000  
  })  
  animation.opacity(0).scale(3, 3).step();//修改透明度,放大  
  _this.setData({  
    spreakingAnimation_1: animation.export()  
  })  
  },250)  
   setTimeout(function(){  
    //波纹放大,淡出动画  
  var animation = wx.createAnimation({  
    duration: 1000  
  })  
  animation.opacity(0).scale(3, 3).step();//修改透明度,放大  
  _this.setData({  
    spreakingAnimation_2: animation.export()  
  })  
  },500)  
}
Copy after login


3. index.

wxss

/**index.wxss**/  
.voice-style {  
  margin-top: 400px;  
  display: flex;  
  position: relative;  
  flex-direction: column;  
  align-items: center;  
}  
  
.bg-style {  
  position: absolute;  
  width: 100px;  
  height: 100px;  
}  
.sound-style{  
  position: absolute;  
  width: 37.6px;  
  height: 60px;  
  margin-top: 20px;  
}
Copy after login

The above is the detailed content of Mini program development of microphone animation effect code for zooming in and out. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: How To Unlock Everything In MyRise
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

PHP permission management and user role setting in mini program development PHP permission management and user role setting in mini program development Jul 04, 2023 pm 04:48 PM

PHP permission management and user role setting in mini program development. With the popularity of mini programs and the expansion of their application scope, users have put forward higher requirements for the functions and security of mini programs. Among them, permission management and user role setting are An important part of ensuring the security of mini programs. Using PHP for permission management and user role setting in mini programs can effectively protect user data and privacy. The following will introduce how to implement this function. 1. Implementation of Permission Management Permission management refers to granting different operating permissions based on the user's identity and role. in small

PHP page jump and routing management in mini program development PHP page jump and routing management in mini program development Jul 04, 2023 pm 01:15 PM

PHP's page jump and routing management in mini program development With the rapid development of mini programs, more and more developers are beginning to combine PHP with mini program development. In the development of small programs, page jump and routing management are very important parts, which can help developers achieve switching and navigation operations between pages. As a commonly used server-side programming language, PHP can interact well with mini programs and transfer data. Let’s take a detailed look at PHP’s page jump and routing management in mini programs. 1. Page jump base

How to implement small program development and publishing in uniapp How to implement small program development and publishing in uniapp Oct 20, 2023 am 11:33 AM

How to develop and publish mini programs in uni-app With the development of mobile Internet, mini programs have become an important direction in mobile application development. As a cross-platform development framework, uni-app can support the development of multiple small program platforms at the same time, such as WeChat, Alipay, Baidu, etc. The following will introduce in detail how to use uni-app to develop and publish small programs, and provide some specific code examples. 1. Preparation before developing small programs. Before starting to use uni-app to develop small programs, you need to do some preparations.

PHP security protection and attack prevention in mini program development PHP security protection and attack prevention in mini program development Jul 07, 2023 am 08:55 AM

PHP security protection and attack prevention in mini program development With the rapid development of the mobile Internet, mini programs have become an important part of people's lives. As a powerful and flexible back-end development language, PHP is also widely used in the development of small programs. However, security issues have always been an aspect that needs attention in program development. This article will focus on PHP security protection and attack prevention in small program development, and provide some code examples. XSS (Cross-site Scripting Attack) Prevention XSS attack refers to hackers injecting malicious scripts into web pages

PHP data caching and caching strategies in small program development PHP data caching and caching strategies in small program development Jul 05, 2023 pm 02:57 PM

PHP data caching and caching strategies in mini program development With the rapid development of mini programs, more developers are beginning to pay attention to how to improve the performance and response speed of mini programs. One of the important optimization methods is to use data caching to reduce frequent access to the database and external interfaces. In PHP, we can use various caching strategies to implement data caching. This article will introduce the principles of data caching in PHP and provide sample codes for several common caching strategies. 1. Data caching principle Data caching refers to storing data in memory to

Implementation method of drop-down menu developed in PHP in WeChat applet Implementation method of drop-down menu developed in PHP in WeChat applet Jun 04, 2023 am 10:31 AM

Today we will learn how to implement the drop-down menu developed in PHP in the WeChat applet. WeChat mini program is a lightweight application that users can use directly in WeChat without downloading and installing, which is very convenient. PHP is a very popular back-end programming language and a language that works well with WeChat mini programs. Let's take a look at how to use PHP to develop drop-down menus in WeChat mini programs. First, we need to prepare the development environment, including PHP, WeChat applet development tools and servers. then we

PHP page animation effects and interaction design in mini program development PHP page animation effects and interaction design in mini program development Jul 04, 2023 pm 11:01 PM

Introduction to PHP page animation effects and interaction design in mini program development: A mini program is an application that runs on a mobile device and can provide an experience similar to native applications. In the development of mini programs, PHP, as a commonly used back-end language, can add animation effects and interactive design to mini program pages. This article will introduce some commonly used PHP page animation effects and interaction designs, and attach code examples. 1. CSS3 animation CSS3 provides a wealth of properties and methods for achieving various animation effects. And in small

UniApp implements analysis of the development and launch process of ByteDance mini-programs UniApp implements analysis of the development and launch process of ByteDance mini-programs Jul 06, 2023 pm 05:01 PM

Analysis of the development and launch process of ByteDance applets implemented by UniApp. As an emerging mobile application development method, ByteDance applets are gradually becoming popular in the industry. Before developing the Bytedance mini program, we need to understand how to use UniApp to implement the development and launch process. 1. Introduction to UniApp UniApp is a framework developed based on Vue.js that uses HTML5, App, and small programs as the unified development framework for multiple terminals. By writing a set of code, it can run on multiple platforms at the same time, including fonts.

See all articles