Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   window.alert (https://javascript.ru/forum/misc/36598-window-alert.html)

defish 21.03.2013 08:17

window.alert
 
На моем сайте есть ссылки на ресурс, который временами недоступен. Как сделать чтобы вместо стандартного окна: "невозможно установить соединение с тра-ля-ля" выскакивало сообщение в маленьком окне?

<script type="text/javascript">
function bonclick(){
alert("В данный момент ресурс недоступен.");
return "";
}
</script>

danik.js 21.03.2013 08:46

Думаю нужно делать запрос на свой сервер, который будет "пинговать" ресурс и анализировать заголовки ответа. Кстати, все это создаст дополнительную задержку, думаю порядка 0,5-1с

defish 21.03.2013 23:21

можно готовый пример? я не "профессор" :help:

danik.js 22.03.2013 04:08

Клиентская часть простая:

$('a').click(function(e){
    e.preventDefault();
    $.post('ping.php', {url: this.href}, function(status){
        // ожидаем что сервер вернет ввиде ответа код статуса ресурса
        if (status == 200) {
            window.location = this.href;
        }
    });
});


На сервере, если это php - через curl делать запрос ресурса. Для примера ищи "профессоров" php.

Вобще, для удобства нужно проверять ресурс не по клику, а раньше, выводя значек доступности или недоступности. Хотя тогда будет много лишних запросов. Если не критично - можно на сервере кэшировать результаты запроса, например каждый час. Причем когда данные в кэше имеются, то можно вообще без ajax иконки выводить.

defish 23.03.2013 05:40

спасибо. похоже придется временно забить :)


Часовой пояс GMT +3, время: 14:12.