回复:https://xradio.us/start/time-place-pronounce.html
这是仅适用于iOS / iPad的问题。所需的onClick行为是播放简短的音频剪辑(发音),然后打开一个窗口进入Wikipedia页面。
这在Windows / Android中有效,但iOS却相反:打开Wikipedia页面,然后在Wikipedia关闭之后,它将播放音频文件。
我尝试setTimeout()
延迟打开Wikipedia页面,但这使情况变得更糟,触发了弹出窗口阻止。尝试<AUDIO onended="window.open(wikiURL)" etc.>
也会触发弹出窗口阻止。注意:仅JS代码的最后两行应与此问题相关。
<script>
var mobile = "";
if(window.innerWidth<1000) mobile = navigator.language.substr(0,2) + ".m.";
function go(wikiPlace) {
var x = wikiPlace.split('_(')[0];
var myEle = document.getElementById(""+x+"");
if(myEle) { myEle.volume = 0.6; myEle.play(); }
window.open('https://'+mobile+'wikipedia.org/wiki/'+wikiPlace);
}
</script>
<audio preload="none" id="Nevada" SRC="audio/xr-Nevada.mp3"></audio>
<audio preload="none" id="Oregon" SRC="audio/xr-Oregon.mp3"></audio>
<audio preload="none" id="Tijuana_Municipality" SRC="audio/xr-Tijuana.mp3"></audio>
<div class="xbtn" onclick="go('Nevada')">NV</div>
<div class="xbtn" onclick="go('Oregon')">OR</div>
<nobr id="tjP2" onclick="go('Tijuana_Municipality')">Tijuana<sup>mx</sup></nobr>
正确的行为:在显示前播放音频。 Windows和Android可以做到这一点。 iOS没有。
我希望先播放音频文件,然后再打开Wikipedia页面。相反,iOS浏览器会打开Wikipedia页面,并等待其关闭以播放音频文件。