Javascript 不会根据数据库的新条目播放声音

Javascript Won't Play Sound Based on New Entry To Database

我正在使用 AJAX 对 Access 数据库进行长轮询。到目前为止,一切正常,当记录新条目时,会弹出警报以通知用户。但是,无论我做什么,都不会播放声音。我不确定这是否是一个可能的原因,但我的 wav 文件保存在我的 XAMPP/htdocs 文件夹中的同一文件夹中。

setInterval(function() {   
    var old_count = <?php echo $arr['counter']; ?>;
    var audio = new Audio('alert.wav');

    $.ajax({
        type : "POST",
        url : "dbcheck.php",
        timeout: 15000,
 
        success : function(data){
            if (data > old_count) {
                alert('New Hot Part Has Been Entered.');
                document.getElementById('audiotag1').play();
                old_count=data;
                location.reload();
            }

        }
    });
 
},5000);
<audio id="audiotag1" src="alert.wav" preload="auto"></audio>

您是在声音启动后直接调用location.reload();。我假设声音启动的速度不够快,无法听到。

尝试这样的事情:

if (data > old_count) {
    alert('New Hot Part Has Been Entered.');
    document.getElementById('audiotag1').play();
    old_count=data;

    window.setTimeout(function(){ 
        location.reload();
    }, 3000);

}