как в facebook.com или в Gmail, если Вы идете офлайновое / свободное соединение, в то время как Ваш на странице, Вы доберетесь, "некоторые пошли не так, как надо, пытаться соединиться в x:xx секунды" или как "Вы потеряло Ваше соединение"..
как они сделали так, они могут дать офлайновое сообщение? Как сделать это? пример?
Facebook и Gmail постоянно опрашивают сервер с помощью Ajax-запросов через определенные промежутки времени. Если сервер не отвечает в течение определенного времени, они выдают сообщение об ошибке. Все просто.
Простой пример:
window.setInterval(function() {
try {
myFavoriteAjaxLib.poll('/server/heartbeat/time/1234567890');
} catch(e) {
alert('Something went wrong');
}
}, 5000);
Конечно, в реальном мире вы будете иметь что-то более сложное. Тем не менее, вы довольно часто будете видеть сердечный ритм. SO тоже использует его. Введите в адресную строку браузера следующее:
javascript:for(i in heartbeat) alert(i +':'+ heartbeat[i]);
или просмотрите DOM с помощью Firebug.