|
|
|
@ -30,15 +30,35 @@
|
|
|
|
|
if (!url.startsWith(baseUrl)) { |
|
|
|
|
url = baseUrl + 'getCorsFile?urlPath=' + encodeURIComponent(Base64.encode(url)); |
|
|
|
|
} |
|
|
|
|
var currentSectionIndex = 100; |
|
|
|
|
// Load the opf
|
|
|
|
|
var book = ePub(url); |
|
|
|
|
//var rendition = book.renderTo("viewer", { flow: "scrolled-doc" });
|
|
|
|
|
|
|
|
|
|
function blobToArrayBuffer(blob) { |
|
|
|
|
return new Promise((resolve, reject) => { |
|
|
|
|
const reader = new FileReader(); |
|
|
|
|
reader.onerror = reject; |
|
|
|
|
reader.onload = () => { |
|
|
|
|
resolve(reader.result); |
|
|
|
|
}; |
|
|
|
|
reader.readAsArrayBuffer(blob); |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
let xhr = new XMLHttpRequest(); |
|
|
|
|
xhr.open('GET',url); //文件所在地址
|
|
|
|
|
xhr.responseType = 'blob'; |
|
|
|
|
xhr.onload = () => { |
|
|
|
|
var currentSectionIndex = 100; |
|
|
|
|
var book = ePub(); |
|
|
|
|
let content = xhr.response; |
|
|
|
|
let blob = new Blob([content]); |
|
|
|
|
var bookData = blobToArrayBuffer(blob); |
|
|
|
|
book.open(bookData, "binary"); |
|
|
|
|
var rendition = book.renderTo("viewer", { |
|
|
|
|
flow: "scrolled-doc", |
|
|
|
|
width: "100%" |
|
|
|
|
width: "100%", |
|
|
|
|
allowScriptedContent: true |
|
|
|
|
// height: 600
|
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
var displayed = rendition.display(); |
|
|
|
|
var params = URLSearchParams && new URLSearchParams(document.location.search.substring(1)); |
|
|
|
|
var currentSectionIndex = (params && params.get("loc")) ? params.get("loc") : undefined; |
|
|
|
|
rendition.display(currentSectionIndex); |
|
|
|
@ -116,18 +136,19 @@
|
|
|
|
|
|
|
|
|
|
docfrag.appendChild(option); |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
$select.appendChild(docfrag); |
|
|
|
|
|
|
|
|
|
$select.onchange = function(){ |
|
|
|
|
var index = $select.selectedIndex, |
|
|
|
|
url = $select.options[index].getAttribute("ref"); |
|
|
|
|
rendition.display(url); |
|
|
|
|
return false; |
|
|
|
|
var index = $select.selectedIndex, |
|
|
|
|
url = $select.options[index].getAttribute("ref"); |
|
|
|
|
rendition.display(url); |
|
|
|
|
return false; |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
xhr.send(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*初始化水印*/ |
|
|
|
|
if (!!window.ActiveXObject || "ActiveXObject" in window) |
|
|
|
|
{ |
|
|
|
|