mirror of
https://github.com/futurepress/epub.js.git
synced 2025-10-03 14:59:18 +02:00
99 lines
1.8 KiB
HTML
99 lines
1.8 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<title>EPUB.js Basic Example</title>
|
|
|
|
<script src="../dist/epub.js"></script>
|
|
|
|
|
|
<style type="text/css">
|
|
body {
|
|
margin: 0;
|
|
height: 100%;
|
|
}
|
|
|
|
#viewer {
|
|
display: block;
|
|
margin: 50px auto;
|
|
width: 600px;
|
|
}
|
|
|
|
#prev {
|
|
left: 40px;
|
|
}
|
|
|
|
#next {
|
|
right: 40px;
|
|
}
|
|
|
|
.arrow {
|
|
position: absolute;
|
|
top: 50%;
|
|
margin-top: -32px;
|
|
font-size: 64px;
|
|
color: #E2E2E2;
|
|
font-family: arial, sans-serif;
|
|
font-weight: bold;
|
|
cursor: pointer;
|
|
-webkit-user-select: none;
|
|
-moz-user-select: none;
|
|
user-select: none;
|
|
}
|
|
|
|
.arrow:hover {
|
|
color: #777;
|
|
}
|
|
|
|
.arrow:active {
|
|
color: #000;
|
|
}
|
|
|
|
#toc {
|
|
display: block;
|
|
margin: 10px auto;
|
|
}
|
|
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<select id="toc"></select>
|
|
<div id="viewer"></div>
|
|
|
|
<script>
|
|
var $viewer = document.getElementById("viewer");
|
|
var $next = document.getElementById("next");
|
|
var $prev = document.getElementById("prev");
|
|
var currentSectionIndex = 10;
|
|
// Load the opf
|
|
var book = ePub("https://s3.amazonaws.com/moby-dick/OPS/package.opf");
|
|
var rendition = book.renderTo("viewer", {width: 600, height: 400});
|
|
var displayed = rendition.display(currentSectionIndex);
|
|
|
|
book.loaded.navigation.then(function(toc){
|
|
var $select = document.getElementById("toc"),
|
|
docfrag = document.createDocumentFragment();
|
|
|
|
toc.forEach(function(chapter) {
|
|
var option = document.createElement("option");
|
|
option.textContent = chapter.label;
|
|
option.ref = chapter.href;
|
|
|
|
docfrag.appendChild(option);
|
|
});
|
|
|
|
$select.appendChild(docfrag);
|
|
|
|
$select.onchange = function(){
|
|
var index = $select.selectedIndex,
|
|
url = $select.options[index].ref;
|
|
rendition.display(url);
|
|
return false;
|
|
};
|
|
|
|
|
|
});
|
|
</script>
|
|
|
|
</body>
|
|
</html>
|