亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

基于JS開發(fā)微信網(wǎng)頁錄音功能的實例代碼

 更新時間:2019年04月30日 09:54:25   作者:JJLin  
這篇文章主要介紹了基于JS開發(fā)微信網(wǎng)頁錄音功能的實例代碼,代碼簡單易懂,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下

具體代碼如下所示:

wx.ready(function () {
    var startRecordflag = false
    var startTime = null
     //btnRecord 為錄音按鈕dom對象
    btnRecord.addEventListener('touchstart', function (event) {
      event.preventDefault();
      startTime = newDate().getTime();
      // 延時后錄音,避免誤操作
      recordTimer = setTimeout(function () {
        wx.startRecord({
          success: function () {
            var rainAllowRecord = sessionStorage.getItem("rainAllowRecord");//判斷是否授權(quán)過允許使用錄音功能
            if (!isEmpty(rainAllowRecord) && rainAllowRecord == "1") {
              //開始錄音時的操作 如修改錄音按鈕樣式等
            } else {
              //一般第一次時 都沒有授權(quán) 彈出授權(quán)窗口后 無法終止錄音過程 所以在這里設(shè)置rainAllowRecord 的值表示允許過錄音 并且在第一次時主動停止錄音
              sessionStorage.setItem("rainAllowRecord", "1");
              wx.stopRecord();
            }
            startRecordflag = true;
          },
          cancel: function () {
            startRecordflag = true;
            alert('用戶拒絕授權(quán)錄音');
          },
          complete: function () {
            startRecordflag = true;
          }
        });
      }, 300);
    });
    btnRecord.addEventListener('touchend', function (event) {
      event.preventDefault();
      // 間隔太短
      var timeDitance = newDate().getTime() - startTime;
      if (timeDitance < 300) {
        startTime = 0;
        // 不錄音
        clearTimeout(recordTimer);
      } else {
        // 松手結(jié)束錄音
        //startRecordflag 因為startRecord是個異步方法 防止沒有進入startRecord 的回調(diào)就進入了這里
        var startRecordHandle = setInterval(function () {
          //startRecordflag為true 表示已經(jīng)進入過startRecord的回調(diào)
          if (startRecordflag) {
            startRecordflag = false;
            clearInterval(startRecordHandle);
            wx.stopRecord({
              success: function (res) {
                voice.localId = res.localId;
                translateVoice();
              },
              fail: function (res) {
              }
            });
          }
        }, 0);
      }
    });
    wx.onVoiceRecordEnd({
      complete: function (res) {
        voice.localId = res.localId;
        alert('錄音時間已超過一分鐘');
      }
    });
    function translateVoice() {
      //調(diào)用微信的語音轉(zhuǎn)文字接口
      wx.translateVoice({
        localId: voice.localId,
        isShowProgressTips: 0,
        complete: function (res) {
          if (res.hasOwnProperty('translateResult')) {
            alert('識別結(jié)果:' + res.translateResult);
          } else {
          }
        }
      });
    }
    function playVoice() {
      wx.playVoice({
        localId: voice.localId
      });
    }
  })

總結(jié)

以上所述是小編給大家介紹的基于JS開發(fā)微信網(wǎng)頁錄音功能的實例代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

相關(guān)文章

  • JavaScript實現(xiàn)倒計時功能2種方法實例

    JavaScript實現(xiàn)倒計時功能2種方法實例

    很多網(wǎng)站在做活動時會出現(xiàn)一個截止時間倒計時的提示,下面這篇文章主要給大家介紹了JavaScript實現(xiàn)倒計時功能2種方法的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2023-11-11
  • 關(guān)于封裝axios網(wǎng)絡(luò)請求降低代碼耦合度詳解

    關(guān)于封裝axios網(wǎng)絡(luò)請求降低代碼耦合度詳解

    在項目中直接使用Axios或其他第三方庫來發(fā)送網(wǎng)絡(luò)請求獲取數(shù)據(jù)時,會導(dǎo)致代碼與網(wǎng)絡(luò)請求的邏輯耦合度過高,導(dǎo)致難以維護,所以本文將講解如何將網(wǎng)路請求的代碼進行封裝來進行解耦操作,文中通過代碼示例和圖文講解的非常詳細,需要的朋友可以參考下
    2024-05-05
  • javascript實現(xiàn)的閉包簡單實例

    javascript實現(xiàn)的閉包簡單實例

    這篇文章主要介紹了javascript實現(xiàn)的閉包簡單實現(xiàn)方法,涉及javascript閉包的原理與實現(xiàn)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07
  • JS基于面向?qū)ο髮崿F(xiàn)的放煙花效果

    JS基于面向?qū)ο髮崿F(xiàn)的放煙花效果

    這篇文章主要介紹了JS基于面向?qū)ο髮崿F(xiàn)的放煙花效果,涉及javascript面向?qū)ο蠹夹g(shù)的使用技巧,需要的朋友可以參考下
    2015-05-05
  • 淺談Redux中間件的實踐

    淺談Redux中間件的實踐

    這篇文章主要介紹了淺談Redux中間件的實踐,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • 兩個JavaScript中的特殊值null和undefined詳解

    兩個JavaScript中的特殊值null和undefined詳解

    Null和Undefined是JavaScript中非?;A(chǔ)和重要的概念,理解它們的含義、特點和使用方式對于避免出現(xiàn)錯誤和編寫健壯的應(yīng)用程序非常重要,這篇文章主要介紹了兩個JavaScript中的特殊值null和undefined詳解,需要的朋友可以參考下
    2023-06-06
  • 另類網(wǎng)頁中添加運行效果

    另類網(wǎng)頁中添加運行效果

    另類網(wǎng)頁中添加運行效果...
    2006-12-12
  • 通過封裝scroll.js 獲取滾動條的值

    通過封裝scroll.js 獲取滾動條的值

    本文通過實例代碼給大家介紹了通過封裝scroll.js 獲取滾動條的值的相關(guān)知識,代碼簡單易懂,非常不錯,具有一定的參考借鑒價值,需要的朋友參考下吧
    2018-07-07
  • js實現(xiàn)俄羅斯方塊小游戲分享

    js實現(xiàn)俄羅斯方塊小游戲分享

    這篇文章主要介紹了js實現(xiàn)俄羅斯方塊小游戲分享,,需要的朋友可以參考下
    2014-01-01
  • 深入淺析JavaScript中的RegExp對象

    深入淺析JavaScript中的RegExp對象

    正則表達式(regular expression)是一種表達文本模式(即字符串結(jié)構(gòu))的方法,有點像字符串的模板,常常用作按照“給定模式”匹配文本的工具。下面通過本文給大家分享js 中的regexp對象,需要的朋友參考下吧
    2017-09-09

最新評論