zoukankan      html  css  js  c++  java
  • audio

    音频。
    属性名 类型 默认值 说明
    id String   video 组件的唯一标识符
    src String   要播放音频的资源地址
    loop Boolean false 是否循环播放
    controls Boolean true 是否显示默认控件
    poster String   默认控件上的音频封面的图片资源地址,如果 controls 属性值为 false 则设置 poster 无效
    name String 未知音频 默认控件上的音频名字,如果 controls 属性值为 false 则设置 name 无效
    author String 未知作者 默认控件上的作者名字,如果 controls 属性值为 false 则设置 author 无效
    binderror EventHandle   当发生错误时触发 error 事件,detail = {errMsg: MediaError.code}
    bindplay EventHandle   当开始/继续播放时触发play事件
    bindpause EventHandle   当暂停播放时触发 pause 事件
    bindtimeupdate EventHandle   当播放进度改变时触发 timeupdate 事件,detail = {currentTime, duration}
    bindended EventHandle   当播放到末尾时触发 ended 事件
    MediaError.code
    返回错误码 描述
    MEDIA_ERR_ABORTED 获取资源被用户禁止
    MEDIA_ERR_NETWORD 网络错误
    MEDIA_ERR_DECODE 解码错误
    MEDIA_ERR_SRC_NOT_SUPPOERTED 不合适资源
     
    my example:
    <audio  src="{{src}}" action="{{action}}" controls="{{controls}}" ></audio>
      onReady:function () {
        //页面渲染完成
            this.reload(this.data.currentId);
        },
     reload:function (id) {
            var song = data[id] || {}; 
            console.log(song);       
            this.setData ({
                picurl: song.album.picUrl,
                src: song.mp3Url,
                controls:true,   //不显示默认控件
                action: {
                    method: 'setCurrentTime',
                    data: 0
                }
            });
            wx.setNavigationBarTitle({
              title: song.name
            });
            setTimeout(() => {   //延迟执行,不重复执行,实现音频自动播放
                this.setData({
                    action:{
                        method:'play'
                    }
                })
            },100);
        }
     
    示例代码:
    <!-- audio.wxml -->
    <audio poster="{{poster}}" name="{{name}}" author="{{author}}" src="{{src}}" id="myAudio" controls loop></audio>

    <button type="primary" bindtap="audioPlay">播放</button>
    <button type="primary" bindtap="audioPause">暂停</button>
    <button type="primary" bindtap="audio14">设置当前播放时间为14秒</button>
    <button type="primary" bindtap="audioStart">回到开头</button>
    // audio.js
    Page({
      onReady: function (e) {
        // 使用 wx.createAudioContext 获取 audio 上下文 context
        this.audioCtx = wx.createAudioContext('myAudio')
      },
      data: {
        name: '此时此刻',
        author: '许巍',
        src: 'http://ws.stream.qqmusic.qq.com/M500001VfvsJ21xFqb.mp3?guid=ffffffff82def4af4b12b3cd9337d5e7&uin=346897220&vkey=6292F51E1E384E06DCBDC9AB7C49FD713D632D313AC4858BACB8DDD29067D3C601481D36E62053BF8DFEAF74C0A5CCFADD6471160CAF3E6A&fromtag=46',
      },
      audioPlay: function () {
        this.audioCtx.play()
      },
      audioPause: function () {
        this.audioCtx.pause()
      },
      audio14: function () {
        this.audioCtx.seek(14)
      },
      audioStart: function () {
        this.audioCtx.seek(0)
      }
    })
  • 相关阅读:
    Windows 7 x64 (英文操作系统)安装SQLServer 2005版本相关解决方法
    vs2008打开vs2010所做的项目的方法
    sqlserver2008 创建自动备份任务(图文教程)
    js返回上一页,自动刷新自身、父页面语句的实现
    有效的更改IE、Firefox、Chrome浏览器缓存位置的方法
    oo第二次总结
    OO第一次博客总结
    Ansible常用命令整理
    APM全链路监控日志收集篇
    TCP 和 UDP 的区别还有一个UTP一
  • 原文地址:https://www.cnblogs.com/tian-sun/p/7405697.html
Copyright © 2011-2022 走看看