溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

搖一搖小程序系統(tǒng)如何開發(fā)

發(fā)布時間:2022-03-10 14:38:36 來源:億速云 閱讀:130 作者:iii 欄目:開發(fā)技術(shù)

這篇文章主要介紹“搖一搖小程序系統(tǒng)如何開發(fā)”,在日常操作中,相信很多人在搖一搖小程序系統(tǒng)如何開發(fā)問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”搖一搖小程序系統(tǒng)如何開發(fā)”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

 //首先定義一下,全局變量

   var lastTime = 0;//此變量用來記錄上次搖動的時間

   var x=0,

       y = 0,

       z=0,

       lastX =0,

       lastY = 0,

       lastZ = 0;//此組變量分別記錄對應(yīng)x、y、z三軸的數(shù)值和上次的數(shù)值

   var shakeSpeed = 110;//設(shè)置閾值

   //編寫搖一搖方法

   function shake(acceleration) {

     var nowTime = new Date().getTime();//記錄當前時間

     //如果這次搖的時間距離上次搖的時間有一定間隔 才執(zhí)行

     if (nowTime - lastTime > 100) {

       var diffTime = nowTime - lastTime;//記錄時間段

       lastTime = nowTime;//記錄本次搖動時間,為下次計算搖動時間做準備

       x = acceleration.x;//獲取x軸數(shù)值,x軸為垂直于北軸,向東為正

       y = acceleration.y;//獲取y軸數(shù)值,y軸向正北為正

       z = acceleration.z;//獲取z軸數(shù)值,z軸垂直于地面,向上為正

       //計算 公式的意思是 單位時間內(nèi)運動的路程,即為我們想要的速度

       var speed = Math.abs(x + y + z - lastX - lastY - lastZ) / diffTime * 10000;

       //console.log(speed)

       if (speed > shakeSpeed) {//如果計算出來的速度超過了閾值,那么就算作用戶成功搖一搖

         wx.stopAccelerometer()

         self.setData({

           hasInit: false,

           canvas:{}

         })

         audioCtx.setSrc('http://123.207.0.183/application/images/s.mp3')

         audioCtx.play()

         wx.showLoading({

           title: '尋找大神中...'

         })

         config.request({

           // 要請求的地址

           url: config.service.taRan,

           success(e) {

             setTimeout(function(){

               //console.log(e.data)

               audioCtx.setSrc('http://123.207.0.183/application/images/r.mp3')

               audioCtx.play()

               self.uid = e.data

               self.con = ''

               self.onInitShow()

             },2000)

           }

         })

       }

       lastX = x;//賦值,為下一次計算做準備

       lastY = y;//賦值,為下一次計算做準備

       lastZ = z;//賦值,為下一次計算做準備

     }

   }

   wx.onAccelerometerChange(shake)

   //wx.startAccelerometer()

   var audioCtx = wx.createAudioContext('myAudio')

提醒:audio API的src不能用本地地址。

到此,關(guān)于“搖一搖小程序系統(tǒng)如何開發(fā)”的學習就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關(guān)知識,請繼續(xù)關(guān)注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI