Так вот сценарий -
В отличие от 3000 других вопросов в StackOverflow о том, как ВЫЗВАТЬ событие click для элемента input [type = file], я просто хочу ответить на него. Я ищу что-то вроде:
<input id="theFile" onclick="var that=this;setTimeout(function(){if(that.value){postTheForm();}}),0);" />
Я не пытаюсь вызвать click () для элемента, я просто хочу знать, когда кто-то выбрал файл, чтобы мы могли отправить форму. В IE это работает, как и ожидалось, потому что диалоговое окно файла скрывает поток JavaScript, пока пользователь не нажмет кнопку «Открыть» или «Отмена» в диалоговом окне. В FireFox кажется, что диалог не спит поток, и анонимная функция срабатывает немедленно - даже когда диалог все еще работает.
Я думал, могу ли я использовать событие onchange или что-то еще в FireFox для имитации поведения IE, но пока мне не повезло. Любые идеи относительно того, как я могу выполнить код ПОСЛЕ того, как пользователь нажимает кнопку Открыть или Отмена в диалоговом окне?