Подтвердить что ты не робот

Любое событие javascript, возникающее при нажатии пользователем кнопки "Остановить загрузку"?

Я хочу запустить Javascript, когда пользователь нажимает кнопку Stop Load (красный X в большинстве браузеров) или нажимает Esc на клавиатуре, что обычно делает то же самое.

Я видел здесь вопросы, связанные с кнопкой Esc, подключаясь к document.body.onkeyup, но не смог найти ничего, закрывая щелчок мышью на кнопке Stop.

4b9b3361

Ответ 1

В Internet Explorer есть событие document.onstop, которое запускается, но другие браузеры, похоже, не поддерживают это. Обратите внимание, что он запускается, когда пользователь нажимает кнопку "Стоп" или нажимает "Esc", или если пользователь переходит на другую страницу во время загрузки страницы, что имеет тот же эффект.

Я не верю, что существует надежный способ вызвать событие при нажатии кнопки "Стоп" в других браузерах. Возможно, можно было бы сделать что-то вроде: сохранить соединение с сервером открытым (как в Comet), потоковое поддерживать связь вниз и обнаруживать, заканчивается ли поток (как я предполагаю, если бы была нажата кнопка "Стоп" ).

Ответ 2

Если изображения, которые все еще загружаются на страницу, вы можете использовать onabort для отслеживания остаточной нагрузки.

Мониторинг щелчка мыши невозможен, поскольку в текущем окне просмотра внутри не происходит.

Ответ 3

Нет никакого способа перекрестного браузера.

Однако IE имеет специальное событие onstop, которое происходит на body при нажатии кнопки останова. Вы не можете переопределить функциональность кнопки остановки (то есть вы не можете ее отменить), но вы можете обнаружить, что это произошло в IE.