Кстати, я пробовал еще один вариант, убрать полностью функцию load_new_msg и перенести ее на то место где вызывается она в 1 функции, результат тот же.
|
Цитата:
function load_new_msg(dialog_sender_id,dialog_receiver_id,dialog_pid,dialog_offset){ if (window.intervalID) сlearInterval(window.intervalID) window.intervalID = setInterval(function() { $.ajax({ }); }, 5000); } Но лучше intervalID переназвать как-нибудь по-нормальному. |
Цитата:
Или создай пустой объект ob={} (перед вызом функции, в глобальной области) и замени все window.intervalID и intervalID на ob.IntervalID |
Цитата:
|
Erolast,
Но я все равно не врубаюсь, как его код мог работать. Я не увидел в этом куске, где объявлен intervalID кроме этой самой функции, о которой разговор. Так почему же она у него не падает с ошибкой при первом же вызове? Значит intervalID должен быть где-то еще объявлен, правильно? |
Цитата:
и да заработало, но правда пишет при загрузке ошибку ReferenceError: \u0441learInterval is not defined но теперь другая проблема встала, как удалить все переменные dialog_sender_id,dialog_receiver_id,dialog_pid,dia log_offset перед загрузкой load_new_msg ? просто присвоить им всем NULL ? и наверное придется делать их глобальными, чтобы всегда одни и те же использовались? правда как их уничтожить я не знаю, они у меня через var объявлены Цитата:
http://javascript.ru/forum/events/48...tml#post321166 |
cOAPerator,
Я смотрел. У тебя первый запуск этой функции идет из success: function(data){ 29 data = JSON.parse(data); 30 $('#im_content_wrap').empty(); 31 $('#im_content_wrap').append('<div id="im_content" style="">'+data.dataArray+'</div>'); 32 animateToNewMsg(); 33 34 // тут вызывается загрузка новых сообщений 35 load_new_msg(dialog_sender_id,dialog_receiver_id,d ialog_pid,dialog_offset); 36 37 } До этого intervalID нигде не определен. Из ифа идет обращение к неопределенной переменной. На этом месте должна генерироваться ошибка. Может у тебя он определен в animateToNewMsg? |
Цитата:
при первом вызове не вызывается intervalID, он вызывается после того как отрабатывает функция load_new_msg, вот тогда и выходит ошибка 1 раз. но это не важно. надо как то уничтожить переменные все что попадают в функцию. я выше писал какие. |
Цитата:
Цитата:
Цитата:
|
Цитата:
пробовал удалять/обнулять/перезаписывать все равно остаются те значения которые попали при загрузке страницы UPD: странно заработало удаление переменных вот такое: dialog_sender_id = null; dialog_receiver_id = null; dialog_pid = null; dialog_offset = null; а до этого несколько раз перезагружал страницу, показывало всегда одинаковое значение в них. |
Часовой пояс GMT +3, время: 10:27. |