<script type="text/javascript">
var old;
var auto_refresh = setInterval(function() {
old = document.getElementById('load_donnees3').innerHTML;
$('#load_donnees3').load('shoutbox-number.php').fadeIn("slow");
if (old != document.getElementById('load_donnees3').innerHTML) {
var audio = new Audio('bip.mp3');
audio.play();
}
}, 200);
</script>
shoutbox-number.php
页面返回一个数字,当我更改页面数量时,变量old
与div load_donnees3
同时更改,为什么?
我不想查看div中的代码是否发生变化,如果发生变化,则播放声音bip.mp3
。
答案 0 :(得分:2)
你得到一个值:
old = document.getElementById('load_donnees3').innerHTML;
然后将其与... 相同的值:
进行比较if (old != document.getElementById('load_donnees3').innerHTML)
if
语句总是为false
,因为值本身永远不会是!=
。
如果此代码用于更改值的来源:
$('#load_donnees3').load('shoutbox-number.php').fadeIn("slow");
然后你会想要在执行之后获得新值。由于这是异步执行的,因此需要在回调函数中进行比较。像这样:
$('#load_donnees3').load('shoutbox-number.php', function () {
$('#load_donnees3').fadeIn("slow");
if (old != document.getElementById('load_donnees3').innerHTML) {
var audio = new Audio('bip.mp3');
audio.play();
}
});