javascript - IOS微信audio標(biāo)簽不能通過touchend播放
問題描述
做個(gè)h5小游戲,需要長按按鈕放開后播放一個(gè)音效
GameStart.addEventListener(’touchend’, function(event) { event.preventDefault(); Audio.play();}, false);
IOS的機(jī)制是必須通過用戶手動(dòng)觸發(fā), 可是我這應(yīng)該也算才對吧?很是不明白,用touchstart則可以正常播放,希望大神能講解下,或者有什么方案可以解決我這個(gè)需求,長按按鈕放開后再播放音效
問題解答
回答1:Note: On iOS, the Web Audio API requires sounds to be triggered from an explicit user action, such as a tap. Calling noteOn() from an onload event will not play sound.
我搜了半天也沒找到蘋果關(guān)于user action的確切定義,可能touchend不屬于user action就目前嘗試,click與touchstart是可行的
你可以嘗試在touchstart時(shí)執(zhí)行Audio.load(),在touchend是再執(zhí)行Audio.play();
回答2:這個(gè)方法喲,解決了!
相關(guān)文章:
1. python - 為什么match匹配出來的結(jié)果是<_sre.SRE_Match object; span=(0, 54), match=’’>2. mysql優(yōu)化 - mysql 一張表如果不能確保字段列長度一致,是不是就不需要用到char。3. Python處理Dict生成json4. mysql updtae追加數(shù)據(jù)sql語句5. python - 請問這兩個(gè)地方是為什么呢?6. python - 用os.environ能獲取到的環(huán)境變量,在os.environ.getenv卻得不到,這是為什么?7. javascript - 按鈕鏈接到另一個(gè)網(wǎng)址 怎么通過百度統(tǒng)計(jì)計(jì)算按鈕的點(diǎn)擊數(shù)量8. python中怎么對列表以區(qū)間進(jìn)行統(tǒng)計(jì)?9. 請教一個(gè)mysql去重取最新記錄10. 大家都用什么工具管理mysql數(shù)據(jù)庫?
