mirror of
https://github.com/futurepress/epub.js.git
synced 2025-10-05 15:32:55 +02:00
Fix miss first item in pagination
This commit is contained in:
parent
854bebf6e8
commit
82db5d04d4
4 changed files with 21 additions and 21 deletions
|
@ -107,7 +107,7 @@
|
|||
<script>
|
||||
"use strict";
|
||||
|
||||
var book = ePub("../reader/moby-dick/", {restore: true, reload: true });
|
||||
window.book = ePub("../books/moby-dick/", {restore: true, reload: true });
|
||||
|
||||
</script>
|
||||
</head>
|
||||
|
|
|
@ -119,7 +119,7 @@
|
|||
<script>
|
||||
"use strict";
|
||||
|
||||
var book = ePub("../reader/moby-dick/", { width: 1076, height: 588 });
|
||||
var book = ePub("../books/bkb_9781609949914/", { width: 1076, height: 588 });
|
||||
|
||||
</script>
|
||||
</head>
|
||||
|
@ -149,17 +149,17 @@
|
|||
|
||||
// Load in stored pageList from json or local storage
|
||||
///*
|
||||
// EPUBJS.core.request("page_list.json").then(function(storedPageList){
|
||||
// pageList = storedPageList;
|
||||
// console.log(storedPageList)
|
||||
// book.loadPagination(pageList);
|
||||
// });
|
||||
|
||||
EPUBJS.core.request("../books/bkb_9781609949914/page_list.json").then(function(storedPageList){
|
||||
pageList = storedPageList;
|
||||
// console.log(storedPageList)
|
||||
book.loadPagination(pageList);
|
||||
});
|
||||
|
||||
|
||||
// Or generate the pageList on the fly
|
||||
book.ready.all.then(function(){
|
||||
book.generatePagination();
|
||||
});
|
||||
// book.ready.all.then(function(){
|
||||
// book.generatePagination();
|
||||
// });
|
||||
|
||||
// Wait for the pageList to be ready and then show slider
|
||||
book.pageListReady.then(function(pageList){
|
||||
|
|
|
@ -49,7 +49,6 @@ EPUBJS.Render.Iframe.prototype.load = function(chapter){
|
|||
render.bodyEl = render.document.body;
|
||||
render.window = render.iframe.contentWindow;
|
||||
|
||||
|
||||
render.window.addEventListener("resize", render.resized.bind(render), false);
|
||||
|
||||
//-- Clear Margins
|
||||
|
|
|
@ -564,7 +564,7 @@ EPUBJS.Renderer.prototype.sprint = function(root, func) {
|
|||
|
||||
EPUBJS.Renderer.prototype.mapPage = function(){
|
||||
var renderer = this;
|
||||
var map = [{ start: null, end: null }];
|
||||
var map = [];
|
||||
var root = this.render.getBaseElement();
|
||||
var page = 1;
|
||||
var width = this.layout.colWidth + this.layout.gap;
|
||||
|
@ -617,18 +617,18 @@ EPUBJS.Renderer.prototype.mapPage = function(){
|
|||
if(!pos || (pos.width === 0 && pos.height === 0)) {
|
||||
return;
|
||||
}
|
||||
|
||||
if(pos.left + pos.width < limit) {
|
||||
if(!map[page-1].start){
|
||||
if(!map[page-1]){
|
||||
range.collapse(true);
|
||||
cfi = renderer.currentChapter.cfiFromRange(range);
|
||||
map[page-1].start = cfi;
|
||||
// map[page-1].start = cfi;
|
||||
map.push({ start: cfi, end: null })
|
||||
}
|
||||
} else {
|
||||
if(prevRange){
|
||||
prevRange.collapse(true);
|
||||
cfi = renderer.currentChapter.cfiFromRange(prevRange);
|
||||
map[page-1].end = cfi;
|
||||
map[map.length-1].end = cfi;
|
||||
}
|
||||
|
||||
range.collapse(true);
|
||||
|
@ -656,18 +656,19 @@ EPUBJS.Renderer.prototype.mapPage = function(){
|
|||
prevRange.collapse(true);
|
||||
|
||||
cfi = renderer.currentChapter.cfiFromRange(prevRange);
|
||||
map[page-1].end = cfi;
|
||||
map[map.length-1].end = cfi;
|
||||
}
|
||||
|
||||
// Handle empty map
|
||||
if(map.length === 1 && !map[0].start) {
|
||||
if(!map.length) {
|
||||
range = this.doc.createRange();
|
||||
range.selectNodeContents(root);
|
||||
range.collapse(true);
|
||||
|
||||
cfi = renderer.currentChapter.cfiFromRange(range);
|
||||
map[0].start = cfi;
|
||||
map[0].end = cfi;
|
||||
|
||||
map.push({ start: cfi, end: cfi })
|
||||
|
||||
}
|
||||
|
||||
// clean up
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue