EPub 3.0 и HTML-формы

Я создаю epub3 с формой внутри. Можно ли сохранить информацию, которая была введена в форму локально, когда пользователь находится в автономном режиме, и отправить ее в веб-службу, если пользователь онлайн?

1 ответ

Это хороший вопрос! В заключение...

Хорошо, для первой части вашего вопроса (сохранение информации) вы можете использовать localstorage, для получения более подробной информации об этом перейдите сюда: http://diveintohtml5.info/storage.html.

Следующая часть ответа не так проста: в идеале вы могли бы просто использовать какую-то попытку перехвата с запросом XHR, но есть вероятность, что это не сработает, потому что большинство читателей ePub3 (на самом деле, почти все из них, кроме Readium) не поддерживает XHR или функциональность внешнего запроса. См. Этот пост для получения дополнительной информации об этом: http://beneaththeink.com/blog/who-supports-epub/.

Если вы хотите, чтобы ваша книга распространялась по любому из "обычных" каналов (в основном это iBooks, поскольку на данный момент вам нужна поддержка скриптов), вы не сможете отправлять данные в этот момент времени...

Однако, если вы будете распространять книгу самостоятельно для использования в Readium и iBooks (или если вы хотите планировать заранее и надеяться на поддержку), есть несколько способов, которые вы можете сделать. Мой личный фаворит - встраивание данных в медиа-запрос (IE www.yoursite.com/fake.m4v?data1=localStorage.data1&data2=localStorage.data2) и извлечение данных на вашем сервере. Это будет вложено в попытку и активируется при каждом открытии книги.

Если вы включите базовый URL (www.yoursite.com) в файл.opf, а также в какой-то момент главы, содержащей скрипт, это будет работать в iBooks! Если вы не включите его в.opf, запрос будет заблокирован прямо из ворот... Для получения дополнительной информации о том, почему это не сработает в реальном iBookstore, ознакомьтесь с этим постом: http://beneaththeink.com/blog/external-video-in-ibooks-epub-files/.

Удачи!!!

Другие вопросы по тегам