我曾尝试寻找类似的问题,但在这里找不到答案。
我想在每次文件内容更改时发出声音通知。每秒使用jquery调用该文件。
我提出的代码会产生一个错误,该错误总是每秒发出声音,似乎div的值是空的,因此每次播放声音时都将其视为不同。
有人可以帮我解决这个问题吗?
<script type="text/javascript">
var tmp;
$(document).ready(function(){refreshTable();});
function refreshTable(){
tmp=$("#tableHolder2").val();
$.get("temp1.php", doSomethingWithData);
}
function doSomethingWithData(data) {
if(tmp!=data){
$("#tableHolder2").text(data);
var sound = new Audio('bell_ring.ogg');
sound.play();
}
$("#tableHolder").text(data);
setTimeout(refreshTable, 1000);
}
</script>
<div id="tableHolder"></div>
<div id="tableHolder2"></div>
temp1.php是具有任何内容的普通文本文件。它返回确定,没有错误。问题出在声音上。它不仅在数据更改时还能发出声音。
最佳答案
我终于可以使代码正常工作了。我正在发布答案,以便以后其他人可以使用。
<script type="text/javascript">
tmp="";
sound = new Audio('bell_ring.ogg');
$(document).ready(function(){refreshTable();});
function refreshTable(){
$.get("temp1.php",withData);
setTimeout(refreshTable, 1000);
}
function withData(data) {
if(tmp!=data){
sound.play();
tmp=data;
}
$("#tableHolder").html(data);
}
</script>
关于jquery - jQuery声音通知有关新文件的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19919452/