国产探花免费观看_亚洲丰满少妇自慰呻吟_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開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 区。| 越西县| 浦东新区| 原平市| 庆元县| 平果县| 广丰县| 咸阳市| 宿迁市| 平遥县| 荆门市| 腾冲县| 射阳县| 永平县| 平谷区| 新昌县| 嘉黎县| 苍梧县| 景德镇市| 九江市| 郯城县| 桐柏县| 罗源县| 巴林左旗| 台安县| 楚雄市| 高安市| 常州市| 嘉义县| 泌阳县| 赣榆县| 繁昌县| 额尔古纳市| 黑山县| 高阳县| 垦利县| 黄大仙区| 微博| 舞阳县| 垫江县| 贵阳市|