2015-12-26 2 views
-3
<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.Переменная проверка неверный код (JavaScript)

+0

Вам не нужно сравнивать весь DOM-элемент. Если 'shoutbox-number.php' возвращает одно (случайное?) Число, сохраните его в одной переменной и просто проверьте его значение. И совет: вы должны использовать около 2 секунд, чтобы проверить его таким образом ... всего за 200 миллисекунд. Я сомневаюсь, что вы увидите что-то –

ответ

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(); 
    } 
}); 
+0

спасибо большое! это отлично! –

Смежные вопросы