Interactive ePub3 issue: Need advice

2 posts / 0 new
Last post

I have a technical doubt on an ePub3 job and thought of checking with you all and get your understanding and advise on it.

For one of my German client, I have created a ePub 3.0 re-flow with interactivity, we have used all the interactivities to work on pop-ups (Non-linear content) and it works well on iPad ibooks 3.2, as the initial request from client is to work only for iPad.

I understand that a latest Apple spec (iBooksAssetGuide 5.1 Rev 2) now says that “Develop scripts that perform well on both Mac OS and iOS devices: Interactivity on desktop computers requires input from a mouse while interactivity on iOS devices require touch input”. I’m not sure whether there would be any problem while this job goes into the Apple iBooksstore, due to the latest spec.

It would be of great help, if you all please share your idea’s / view to this problem.


If one does not use device dependent or proprietary issues in the book, it should be accessible for all user-agents, that follow the EPUB 3 recommendation (does any viewer do this already completely? ;o)

The general approach is to understand, that scripting does not provide new content.
If scripting is used at all, comparable to CSS it may change the presentation, for example to
simplify understanding the content for some groups of readers.

Therefore the content needs to be accessible completely with declarative methods; scripted
changes are only an secondary alternative, no primary access to the content.

EPUB3 has specific methods to use events even without scripting, but not sure, if this is implemented in any user-agent or in which user-agents.
In practice one should be careful with this as well, even if this can be considered to be a
declarative method (comparable to animation and interactivity in SVG, explicitly still
disallowed in EPUB 3, but an accessible method, presumably better/more implemented than
the EPUB 3 event issue ;o)

For pop-up-like issues the XHTML and SVG target attribute however needs to have some effect, because this belongs to the version currently used by EPUB, if used with the value
'_blank' this should be a reliable declarative and device independent method for pop-up-like
issues, but there is no detailed control, what a user-agent will do with such links and it may
depend of course on the user preferences anyway, what is a good thing, because the user should know best, what is a meaningful behaviour for himself.

Concerning events/interactivity, different devices will have different instruments for interactivity, for example if a device like a mobile phone has no mouse, those events can be problematic -
often they are mapped to available events, but this is not always meaningful, for example if there is no pointing device, it is problematic to use an event, that such a device is on top of something (like :hover in CSS). Content should not depend on such correlations.

Concerning non-linear content - due to my experience, because one has to add such content
to the spine with linear='no', but some user-agents neglect this attribute anyway (what is not a
wrong behaviour), one has to take into account always, that in some user-agents the book is always presented as linear content, no matter what the intent of the author is - but at least this ensures, that the non-linear content is accessible in such viewers, whatever alternative access the author provides. But this determines, where in the spine one puts this non-linear content with the result, that one has to provide proper links in such files to get back to the linear flow of content again. For example, one adds the non-linear issues as the last items to the spine behind maybe an empty page for those user-agents, who ignore the attribute, the links back to normal flow are essential for the users with user-agents, which interpret the attribute.

Secondary menu