Есть ли способ обнаружить закрытие ввода файла в Firefox? - PullRequest
0 голосов
/ 27 февраля 2019

В браузерах Chromium, таких как Opera, Chrome и даже IE 11, я могу обнаружить закрытие ввода файла при вызове document.body.onfocus, но это не работает в Firefox, и я не могу найти какой-либо способ сделать этов Firefox.

Код:

const Input = document.createElement('input');

Input.type = 'file';

const ref = {
    files: undefined,
    hasClosed: false,
};

document.body.onfocus = () => ref.hasClosed = true;

Input.onchange = function () {
    ref.files = this.files;
};

document.body.appendChild(Input)

Input.click();

while (ref.files === undefined && !ref.hasClosed) {
    delay(100);
} //checks condition every 100ms
//code to upload the file to my database or not

document.body.removeChild(Input);

Это прекрасно работает в Chrome и т. д., но в Firefox событие onfocus никогда не срабатывает, и цикл никогда не заканчивается ...

PS:Я не могу добавить кнопку отправки, все это должно быть сделано без дальнейшего ввода данных пользователем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...