国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > iOS > 正文

IOS微信搖一搖聲音無法播放的解決辦法

2019-10-21 18:41:04
字體:
來源:轉載
供稿:網友

IOS中第一次調用play方法播放音頻會被阻止,必須得等用戶有交互動作,比如touchstart,click后才能正常調用,所以可以在搖一搖之前提醒用戶點擊一下開始游戲的按鈕或者給用戶一個彈窗,用戶點擊的時候播放一個超級短的無聲音文件,之后替換src,這樣再調用play方法就可以了。

代碼如下如:

<!DOCTYPE html><html lang="zh"><head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta http-equiv="X-UA-Compatible" content="ie=edge" /> <title>Document</title></head><body> <button>開始游戲</button> <audio src="https://daoket.github.io/img/load.mp3" id="audio"></audio> <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script> <script type="text/javascript"> $('button').one('touchstart', function () {  var audio = document.getElementById("audio");  audio.play();  audio.setAttribute('src', 'https://daoket.github.io/img/shake.mp3');  audio.load();  $(this).text('游戲進行中'); }) /**  * 移動端搖一搖  * @params devicemotion 提供設備加速度信息  */ window.addEventListener('devicemotion', devicemotionHandler, false); var x,  y,  z,  last_x,  last_y,  last_z,  last_time = 0,  SHAKE_SPEED = 4000; function devicemotionHandler (evet) {  var acc = event.accelerationIncludingGravity,   curTime = new Date().getTime(),   diffTime = curTime - last_time;  if (diffTime > 100) {    last_time = curTime;    x = acc.x;    y = acc.y;    z = acc.z;    var speed = Math.abs(x + y + z - last_x - last_y - last_z) / diffTime * 10000;    if (speed > SHAKE_SPEED) {    document.getElementById("audio").play()    }    last_x = x;    last_y = y;    last_z = z;  } } </script></body></html>

在線查看

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到IOS開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 萨迦县| 原平市| 恭城| 普宁市| 永平县| 惠水县| 汶川县| 栖霞市| 云和县| 仙居县| 汨罗市| 科尔| 阳泉市| 廉江市| 全椒县| 汶上县| 潍坊市| 根河市| 北辰区| 青神县| 蒙城县| 吉木萨尔县| 伊金霍洛旗| 太谷县| 巴南区| 涞水县| 驻马店市| 江城| 永清县| 特克斯县| 莱西市| 西充县| 奉化市| 舒城县| 太保市| 株洲市| 崇文区| 浦江县| 南澳县| 金川县| 临武县|