Я создал и проверил ePub 3, который сейчас тестирую. Я использую фиксированную раскладку..
<meta property="rendition:layout">pre-paginated</meta>
<meta property="rendition:orientation">portrait</meta>
<meta property="rendition:spread">none< /meta>
Он работает хорошо, однако кажется, что несколько страниц загружаются и запускаются одновременно при тестировании в разных ридерах. Я использую документ jQuery, готовый начать работу и воспроизводить аудио, запускать анимацию и т. д.
При тестировании в iBooks я открываю книгу на странице 1, которая загружается и начинает работать, но затем я начинаю слышать звук со страницы 2... поэтому функция готовности документа сработала для страницы 2 (потому что она была загружена), хотя я еще не просматривал. В Readium кажется, что загружается и запускается каждая страница...
Три вопроса:
Кто-нибудь знает, почему?
Есть ли способ предотвратить запуск электронной книги или загрузку страниц, которые вы в данный момент не просматриваете?
Есть ли способ определить (с помощью javascript), когда страница просматривается? (Я попытался добавить прослушиватель событий фокуса в окно, но это не сработало).
DOMContentLoaded
и посмотреть, как это работает. В качестве альтернативы вы можете попробовать добавить тег script, запускающий все в нижней части BODY. Я не знал, что iBooks пытается предварительно загрузить будущие страницы, если это действительно так. В общем, использование jQuery в электронной книге — не лучшая идея. Он слишком большой и толстый, и вся работа по устранению несовместимости между браузерами не нужна. - person   schedule 09.04.2013