Как в независимости от количества открытых окон - запускать функцию только один раз?

Сенсей

Новичок
Как в независимости от количества открытых окон - запускать функцию только один раз?

Вобщем рализую оповещение о новых сообщениях на сайте через AJAX

Концепт сайта таков что люди постоянно обновляют страничку дабы проверить не написал ли им кто на страничку. Хочу сделать скажем так удобнее и менее ресурсоемкое.

Все просто... выполняем на страничке

Код:
<script type="text/javascript">
setInterval("CheckProfileComments()", 15000);
</script>
И юзер получает уведомление ввиде мигающего GIF-а...

Все бы хороше... но допустим у пользователя открыто 5-10 окон (что они делают часто для просмотра фоток и блогов)

то мы получаем соответственно 5-10 запросов на сервер через каждые 15 секунд.

Есть ли способ скажем так определить сколько окон запущено у юзера и что бы только в одном из них выполнялся вызов функции?
 

Gas

может по одной?
теоритичесГая идея:
использовать для этого flash (shared object) + javascript:

1. флеш невидимый, загружается, генерирует уникальное "имя" окна (хоть timestamp с микросекундами) и пихает его в shared object.

2. начинает с периодичностью в 1-N секунд проверять состояние объекта, если его значение не равно имени окна - вызывает js, который сообщает что нужно остановить слать запросы.

3. повесить на window.onfocus ф-цию, которая будет дёргать флеш и говорить что это окно сейчас текущее, чтоб он установил своё имя в shared object при переключении табов.
 

Сенсей

Новичок
Gas
С флешем еще возиться блин...

HraKK
Ну это и есть AJAX

Есть возможость проверить если уже используется AJAX запрос? Я тебя правильно понял?

Код:
function CheckProfileComments()
{
	ajax.method = 'POST';
	ajax.setVar("section", 'Users');
	ajax.setVar("file", 'ajax_check_profile_comments');
	ajax.requestFile = '/index.php';
	ajax.onCompletion = CheckProfileCommentsCompleted;
	ajax.runAJAX();
}

function CheckProfileCommentsCompleted()
{
	if (ajax.response > 0)
	{
	document.getElementById('profile_new_comments_msg_area').innerHTML='Новые сообщения на страничке';
	}
	else
	{
	document.getElementById('profile_new_comments_msg_area').innerHTML='';
	}
}
 

С.

Продвинутый новичок
Сделать такой интерфейс, чтобы пользователю не нужно было открывать по 5-10 окон.
 
Сверху