微信小程序——给按钮添加点击音效

今天来讲解一下如何给微信小程序的按钮添加点击音效

注意:这里的按钮不一定只是 <button>,也可以是一张图片,其实只是添加一个监听点击事件的函数而已

首先来看下按钮的定义

html 复制代码
<button bind:tap="onInput" >点我有音效,来试试看?</button>

定义 button 按钮,同时给按钮添加了监听点击事件,一旦监听到按钮被点击了,就会执行 onInput() 函数

此时,只需要在 onInut() 函数中设置音效的相关配置即可

javascript 复制代码
onInput: function(e){
    // 这里的参数 e 若其他功能无需使用到也可以不用
    // 这里可以写除了音效以外的功能

    // 按钮点击音效
    const innerAudioContext = wx.createInnerAudioContext()
    innerAudioContext.autoplay = false  // 是否自动开始播放,默认为 false
    innerAudioContext.loop = false  // 是否循环播放,默认为 false
    wx.setInnerAudioOption({    // ios在静音状态下能够正常播放音效
      obeyMuteSwitch: false,   // 是否遵循系统静音开关,默认为 true
      // 当此参数为 false 时,即使用户打开了静音开关,也能继续发出声音
      success: function (e) {
        // 可以省略
      },
      fail: function (e) {
        // 可以省略
      }
    })
    // 音频文件路径
    innerAudioContext.src="/music/dial.mp3"
    // 音频播放
    innerAudioContext.play()

    // 这里可以写除了音效以外的功能
  }

其实原理很简单,就是创建了一个音频对象,然后对音频对象的各项属性进行了配置,如是否自动播放、是否循环播放、文件路径,最后调用音频对象的 play() 方法,这样音频就会播放了

到这里,关于给按钮添加音效的讲解就结束了

那么,可能有同学就要问了,音效文件在哪里可以找到?

在这里我也教你们一个方法,可以随便找一个下载音频的网站

但是这些资源下载一般都是要收费的, 那么问题来了,怎么免费下载到呢?

按下键盘上的 "F12",就会看到这样一个界面

选择 "Network" - "Media"(中文对应 "网络" - "媒体"),然后点击左上角 "清空"

接着在网页上点击播放你要的那一段音频,此时在上图的下方空白处就会出现对应的音频文件了

接着右键点击那个文件,选择 "Open in new tab"(在新的页面打开)

最后点击最右侧的四个点,选择下载即可

注意哦!这个方法不仅仅音频可以,视频也一样可以这样操作,除非网站做了特殊处理,不然都是可以成功操作的!

注意!注意!注意!个人学习使用可以,若为商业行为,造成侵权,概不负责!!!

若是音频文件需要裁剪,又不想下载如 AU 这些专业音频剪辑软件,可以选择以下网站进行裁剪(注:非广告行为,仅学习推荐)

音频剪切器 mp3剪切 在线音频截取_免费在线工具-爱给网https://www.aigei.com/tool/audio/trim

一 叶 知 秋,奥 妙 玄 心

相关推荐
alxraves13 分钟前
零代码AI助手:用大模型自动生成微信小程序界面与逻辑
人工智能·微信小程序·notepad++
秃头披风侠_郑39 分钟前
【uniapp】一文让你学会微信小程序+APP+H5全平台实战指南
前端·微信小程序·uni-app
爱勇宝18 小时前
一个家庭成长小程序的 MVP 复盘:看到用户在用我很欣慰
微信小程序·产品·设计
这是个栗子2 天前
uni-app微信小程序开发:高频核心 API(三)
微信小程序·小程序·uni-app
quweiie2 天前
thinkphp8结合jwt与微信小程序接口鉴权
微信小程序·小程序·thinkphp接口·接口鉴权
didiplus3 天前
我在GitHub刷到一个诗词API,顺手写了款小程序
微信小程序
小码哥0684 天前
医院陪诊小程序怎么开发-医院陪诊小程序源码功能-微信小程序 医院健康陪诊陪护系统
微信小程序·小程序·医院陪诊·陪诊系统·陪诊陪诊
书中枫叶5 天前
从「上次几点喂奶」到全栈小程序:我做了个喂宝助手
mongodb·微信小程序·node.js
ssshooter5 天前
小程序分包页面报 "has not been registered yet" 的隐蔽根因:一个动态 import 拖垮整个分包
前端·javascript·微信小程序
JudithHuang7 天前
受够了带广告的单位换算 App,我自己做了一个微信小程序
微信小程序