jQuery - кросс-оконная связь (всплывающее окно для выбора файла, без серверной стороны)
У меня есть веб-страница, использующая jQuery. Я хотел бы, чтобы он прочитал файл, выбранный пользователем (или несколько файлов). Я хотел бы, чтобы средство выбора файлов отображалось в другом окне браузера, которое отправляло бы данные обратно в исходное окно.
Так:
- В оригинальных окнах есть кнопка "Выбрать файлы".
- Открываются новые окна, которые позволяют пользователю выбирать файлы в форме. Пользователь нажимает "ОК", окно закрывается и каким-то образом отправляет данные о выбранных файлах в исходные окна.
- Полученные данные обрабатываются (и событие фальсифицируется).
Что мне удается найти, это: http://www.sfpeter.com/2008/03/communication-between-browser-windows-with-jquery-my-new-plugin/
Однако это кажется довольно старым - знаете ли вы какие-нибудь новые и лучшие решения?
1 ответ
Посмотрите нижний комментарий в размещенной вами ссылке (размещенной автором статьи):
Я больше этим не пользуюсь, но могу сделать новую ревизию, если на нее есть спрос. С тех пор, как я написал этот плагин, была разработана новая функция HTML5, которая фактически облегчила бы это: API postMessage (ссылка здесь). Однако я не знаю, насколько хорошо эта функция поддерживается в старых браузерах, таких как IE7 или IE8. Я бы переписал свой плагин для использования API postMessage по умолчанию, но при необходимости прибегну к моему старому подходу.
Синтаксис этого API очень похож на мой. В зависимости от того, какая поддержка браузера вам нужна, API postMessage может быть всем, что вам нужно.
Может быть, это поможет.