forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   JavaScript / HTML (http://forum.boolean.name/forumdisplay.php?f=136)
-   -   JS event after loading file (http://forum.boolean.name/showthread.php?t=18658)

Reizel 28.10.2013 15:21

JS event after loading file
 
В общем, страница устроена так:
* если она запрашивается без параметров, выдаёт WebUI
* если с параметрами - отдаёт файл(отчёт в Excel)

в WebUI есть кнопочка "Загрузить отчёт", которая window.location.href направляет на себя же, но с параметрами, при этом вылезает красивая хуёвина(spinner) на весь экран. Так вот. Нужно отловить событие загрузки файла, и после него скрыть спиннер. Такое реализуемо средствами JS?

moka 29.10.2013 00:27

Ответ: JS event after loading file
 
Делай скриптом без перезагрузки страницы - это в разы лучше.
Либо:
PHP код:

window.onload = function() {
  
// onload
}; 

Сработает когда всё закгрузилось.
Либо тупо скрипт в конце страницы.

А вообще, нубские вопросы и на них ответов в интернете сысячи, ты хоть погуглил?

Reizel 30.10.2013 21:42

Ответ: JS event after loading file
 
Цитата:

Сообщение от moka (Сообщение 269425)
Делай скриптом без перезагрузки страницы - это в разы лучше.
Либо:
PHP код:

window.onload = function() {
  
// onload
}; 

Сработает когда всё закгрузилось.
Либо тупо скрипт в конце страницы.

А вообще, нубские вопросы и на них ответов в интернете сысячи, ты хоть погуглил?

Ты бы знал, сколько я гуглил до вопроса и после, и сколько вариантов перепробовал... эх.
И через форму, и через фрейм, и через какой-то download-фреймворк, по всякому пытался. Не срабатывает событие. Пошёл ковырять сторону сервера. Перепробовал все мыслимые и немыслимые сочетания хедеров и состояний сокета после передачи данных... нет, не ловит.
В network-логе вижу: status = closed (хотя сокет никто и не думал закрывать). В общем, где-то на окраинах нашёл, что, мол, это движковая палка в колёса от хрома, он так делает по какой-то причине едва ясной.

Summary: убрал спиннер, т.к. нереализуемо.

ViNT 31.10.2013 23:34

Ответ: JS event after loading file
 
А если сервер периодически XHR-запросами пинать, пусть возвращает состояние?

moka 01.11.2013 01:00

Ответ: JS event after loading file
 
Сделай мелкий пример на jsfiddle.net, и выложи тут, мы его подредактируем.
Делай чтобы был очень мелкий пример.


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

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot