1
0
Fork 0
mirror of https://github.com/futurepress/epub.js.git synced 2025-10-02 14:49:16 +02:00
This commit is contained in:
NoraH1to 2023-05-21 19:57:24 +08:00 committed by GitHub
commit 32cd5eb568
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 13 additions and 6 deletions

View file

@ -77,9 +77,7 @@ class Views {
}
destroy(view) {
if(view.displayed){
view.destroy();
}
view.destroy();
if(this.container){
this.container.removeChild(view.element);

View file

@ -6,7 +6,12 @@ import { EVENTS } from "../../utils/constants";
import { Pane, Highlight, Underline } from "marks-pane";
class IframeView {
static ViewMap = new Map();
constructor(section, options) {
const oldView = IframeView.ViewMap.get(section.href);
if (oldView) oldView.destroy();
IframeView.ViewMap.set(section.href, this);
this.settings = extend({
ignoreClass : "",
axis: undefined, //options.layout && options.layout.props.flow === "scrolled" ? "vertical" : "horizontal",
@ -48,6 +53,7 @@ class IframeView {
this.highlights = {};
this.underlines = {};
this.marks = {};
this.loading = undefined;
}
@ -158,7 +164,6 @@ class IframeView {
return this.load(contents);
}.bind(this))
.then(function(){
// find and report the writingMode axis
let writingMode = this.contents.writingMode();
@ -382,7 +387,8 @@ class IframeView {
load(contents) {
var loading = new defer();
this.loading && this.loading.reject('cancel');
var loading = this.loading = new defer();
var loaded = loading.promise;
if(!this.iframe) {
@ -841,6 +847,9 @@ class IframeView {
this._height = null;
}
this.loading && this.loading.reject('cancel');
// this.element.style.height = "0px";
// this.element.style.width = "0px";
}