我试图创建一个实时通知脚本,每次在我的文件中找到某个文本时,它都会发出声音。这就是我尝试过的:
<script type="text/javascript" src="jquery-2.1.3.min.js"></script>
<script type="text/javascript">
function getTextfile() {
$.get('myfile.txt', { cache:false }, function(data) {
if (data.indexOf("Hello World") > -1) {
document.write("Hello World is found");
var audio = new Audio('wb.wav');
audio.play();
} else {
document.write("It's NOT found");
var audio = new Audio('wn.wav');
audio.play();
}
setTimeout(getTextfile, 1000);
},'text');
}
getTextfile();
</script>
myfile.txt
看起来像这样:
Line one
line two
Hello World
line four
但是在我的Chrome浏览器上,我收到了这个错误:
未捕获RangeError:超出最大调用堆栈大小
myfile.txt
会动态更改,因此每次找到我要查找的文字时,它都会发出不同的声音,或者在我不必刷新浏览器的情况下找不到它。我该如何解决这个问题?
答案 0 :(得分:0)
我发现造成问题的原因是document.write()
导致问题。摆脱document.write()
后,一切都很完美。谢谢