Показать сообщение отдельно
  #2 (permalink)  
Старый 30.01.2014, 07:46
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

1) Забей на всякие ActiveXObject - они уже давно не актуальны (IE6-7). Соответственно всякие if( http ) - тоже лишние проверки.
2) Происходит косяк тогда, когда клик пришелся в момент предыдущего запроса. То есть таймер мы сбросили, но когда придет ответ от сервера, то выполнится функция onreadystatechange, которая вновь запустит таймер. Решение - объявить http переменную выше, то есть рядом с intervalID. И при переходах на другую страницу помимо clearInterval вызывать http.abort()
3)
Сообщение от pokk
        clearInterval(intervalID);
        clearInterval(intervalID);
А че всего два раза? Надо продублировать строку трижды! Так надежнее!
И вобще, почти каждую строку кода надо для надежности дублировать несколько раз!
__________________
В личку только с интересными предложениями
Ответить с цитированием