Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/477.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Can';使用Safari无法在iPad上播放wav文件_Javascript_Ipad_Html_Wav - Fatal编程技术网

Javascript Can';使用Safari无法在iPad上播放wav文件

Javascript Can';使用Safari无法在iPad上播放wav文件,javascript,ipad,html,wav,Javascript,Ipad,Html,Wav,我有一个我已经构建的web应用程序,它需要有三种不同类型的警报。单嘟嘟声、长嘟嘟声和三嘟嘟声。所有音频文件均为.wav格式。该应用程序可以在Mac或PC上正常播放所有蜂鸣音通知,Mac上有IE、FireFox、Chrome和Safari 当我在iPad上运行应用程序时,它只想播放一声嘟嘟声,并且会在每次应该播放的时候播放。当它应该播放长嘟嘟声或三声嘟嘟声时,它不会 谁能告诉我为什么会发生这种情况,我能做些什么来让它工作?这个web应用程序是为在iPad和完整的web浏览器上运行而构建的。在申请完

我有一个我已经构建的web应用程序,它需要有三种不同类型的警报。单嘟嘟声、长嘟嘟声和三嘟嘟声。所有音频文件均为.wav格式。该应用程序可以在Mac或PC上正常播放所有蜂鸣音通知,Mac上有IE、FireFox、Chrome和Safari

当我在iPad上运行应用程序时,它只想播放一声嘟嘟声,并且会在每次应该播放的时候播放。当它应该播放长嘟嘟声或三声嘟嘟声时,它不会

谁能告诉我为什么会发生这种情况,我能做些什么来让它工作?这个web应用程序是为在iPad和完整的web浏览器上运行而构建的。在申请完成之前,这是最后一件需要解决的事情

提前感谢。:)

下面是我的音频标签代码和使其工作的javascript

HTML

    <span style="visibility:hidden; display: none; ">
        <audio src="./sounds/beep.wav"></audio>
        <audio src="./sounds/longBeep.wav"></audio>
        <audio src="./sounds/tripleBeep.wav"></audio>
    </span>
所有音频文件都使用相同的编解码器和格式

仅限

使用一个音频元素并使用JS更改src属性。然后在需要时调用加载/播放。对此进行了详细说明。

仅限


使用一个音频元素并使用JS更改src属性。然后在需要时调用加载/播放。详细介绍了这一点。

IOS支持声音播放,但不支持自动播放。您必须打开一个控件,强制用户点击播放按钮,声音才能开始播放


IOS支持声音播放,但不支持自动播放。您必须打开一个控件,强制用户点击播放按钮,声音才能开始播放


3.wav是否使用相同的编解码器?请记住.wav是一种容器格式,音频数据本身几乎可以使用任何编解码器。如果long/triple.wav使用的是ipad不支持的编解码器,那么您将永远无法让它们播放。您使用.wav文件有什么具体原因吗?没有,我现在只需要它们全部播放。为什么不改用MP3呢?它们也比.wav文件小得多。我已经把文件换成了.mp3,但还是没有运气。如果我将longBeep和tripleBeep的javascript更改为document.getElementsByTagName('audio')[0];而不是1或2。。。它按预期每次播放一声蜂鸣音。这就像它没有加载第二个音频元素。3.wav使用相同的编解码器吗?请记住.wav是一种容器格式,音频数据本身几乎可以使用任何编解码器。如果long/triple.wav使用的是ipad不支持的编解码器,那么您将永远无法让它们播放。您使用.wav文件有什么具体原因吗?没有,我现在只需要它们全部播放。为什么不改用MP3呢?它们也比.wav文件小得多。我已经把文件换成了.mp3,但还是没有运气。如果我将longBeep和tripleBeep的javascript更改为document.getElementsByTagName('audio')[0];而不是1或2。。。它按预期每次播放一声蜂鸣音。这就像它没有加载第二个音频元素。这只是意味着在任何时间只能播放一个。这只是意味着在任何时间只能播放一个。
    function playBeep() {
        var beepAudio = document.getElementsByTagName('audio')[0];
        beepAudio.play();    
    }

    function playLongBeep() {
        var beepAudio = document.getElementsByTagName('audio')[1];
        beepAudio.play();    
    }

    function playTripleBeep() {
        var beepAudio = document.getElementsByTagName('audio')[2];
        beepAudio.play();    
    }