Проблема в том, что в user_read
установлен таймер, который запускает ajax_read
через 12 с с правильным URL-адресом. Таким образом, когда вызывается этот ajax_read
, он выбирает информацию и устанавливает новый таймаут, на этот раз вызывая ajax_read
после waittime
с ?method=r…
. Поэтому после первого тайм-аута user_read
он никогда больше не вызывается.
К вашему сведению, я наблюдал это с помощью (панели Net) Firebug и фиктивной формы и method.php на локальном веб-сервере. Это стало ясно после установки waittime
в 4000 и использования .innerHTML += …
, что привело к двум вызовам каждые 4 секунды.
index.html
(я знаю, это быстро и грязно):
<!DOCTYPE html>
<html>
<head>
<meta charset=UTF-8>
<title>Chat</title>
</head>
<body>
<input id="chatnick" type="text" value="Nickname"><br>
<input id="roomid" type="text" value="4"><br>
<input id="chatmsg" type="text"><br>
<div id="userwindow" style="width: 500px; height: 300px"></div><br>
<div id="chatwindow" style="width: 300px; height: 300px"></div><br>
<script src="js.js"></script>
</body>
</html>
фальшивка methods.php
:
blah<br>
Также помните, что xmlhttp.status
может не быть 200
.