Tamim Al Manaseer
Tamim Al Manaseer

Reputation: 3724

epub.js not loading properly on IE11

I'm trying to load an epub on my page using epub.js library and its not working on IE 11, it works perfrectly on chrome and Firefox though.

I'm not getting a script error, I don't get a message in the console log, fiddler says all scripts (including zip.js and my epub) are downloaded properly.

It just doesn't load, the iframe embedded has a src="" property and an empty html body. as in the following snapshot.

epub Loading Failure Snapshot

Here is my html page content:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <script src="content/epubjs/epub.js"></script>
    <script src="content/epubjs/libs/zip.min.js"></script>
</head>
<body>
    <span onclick="Book.prevPage();">Prev</span>
    <span onclick="Book.nextPage();">Next</span>

    <div style="height: 700px; border: 5px solid red" id="area"></div>

    <script type="text/javascript">
        EPUBJS.filePath = "content/epubjs/libs/";
    </script>

    <script type="text/javascript">
        var Book = ePub("content/aliceDynamic.epub", {
                        version: 4,
                        restore: false, // Skips parsing epub contents, loading from localstorage instead
                        storage: false, // true (auto) or false (none) | override: 'ram', 'websqldatabase', 'indexeddb', 'filesystem'
                        spreads: false, // Displays two columns
                        fixedLayout: true, //-- Will turn off pagination
                        styles: {}, // Styles to be applied to epub
                        width: false,
                        height: '700px'
                    });

        Book.renderTo("area");

    </script>
</body>
</html>

I tried to play around with the options parameter, set things to false and true here and there but it didn't help.

Upvotes: 2

Views: 993

Answers (1)

samy
samy

Reputation: 14962

It looks like it is a problem with the current version of epub.js and internet explorer 11. If you try and load the moby dick page you should see the same problem.

Try setting a break on all exceptions (even handled ones) in the javascript engine of IE, and you will see that the javascript throws an exception saying that "'XPathResult' is undefined".

Common recommendations to correct that seem to be installing the wicked-good-xpath library in order to sidestep ie11 lack of XPath support. Install the library and initialize it before trying to load you epub.

If this doesn't correct your problem, you may have to wait until the issues are solved since you don't seem to be the only person who encounters it.

Upvotes: 1

Related Questions