From d89ce75d71cbb51b5100c01670a165f2e68cab9c Mon Sep 17 00:00:00 2001 From: Vincent Vanwaelscappel Date: Thu, 10 Jan 2019 19:02:27 +0100 Subject: [PATCH] fix #2505 @0.5 --- js/libs/fluidbook/fluidbook.js | 9 ++++----- js/libs/fluidbook/fluidbook.links.js | 10 ++++++++++ js/libs/fluidbook/fluidbook.menu.js | 9 ++++++--- 3 files changed, 20 insertions(+), 8 deletions(-) diff --git a/js/libs/fluidbook/fluidbook.js b/js/libs/fluidbook/fluidbook.js index d0b1c0dc..9e0e70c6 100644 --- a/js/libs/fluidbook/fluidbook.js +++ b/js/libs/fluidbook/fluidbook.js @@ -425,9 +425,8 @@ Fluidbook.prototype = { } } else { var view = args[1]; - if (this.currentPage == -1) { - if (view == 'multimedia' || view == 'video') { - var $this = this; + if (this.currentPage === -1) { + if (view === 'multimedia' || view === 'video' || view === 'iframe') { var searchURL = args.join('/'); $.each(this.datas.links, function (pageNr, links) { var hl = $('' + links + ''); @@ -436,13 +435,13 @@ Fluidbook.prototype = { return false; } }); - if (this.currentPage == -1) { + if (this.currentPage === -1) { this.currentPage = 0; } } else { this.currentPage = 0; } - $this.pageTransition(this.currentPage); + $this.pagetransitions.pageTransition(this.currentPage); } this.menu.openView(view, args[2], args[3], function () { $this.hideSplash(); diff --git a/js/libs/fluidbook/fluidbook.links.js b/js/libs/fluidbook/fluidbook.links.js index 0d5fee71..0f2ead8e 100644 --- a/js/libs/fluidbook/fluidbook.links.js +++ b/js/libs/fluidbook/fluidbook.links.js @@ -222,6 +222,16 @@ FluidbookLinks.prototype = { return this.fluidbook.datas.linksData[uid]; }, + getLinkByHref: function (href) { + for (var i = 1; i <= this.fluidbook.datas.pages; i++) { + var res = $(this.fluidbook.datas.links[i]).find('a[href="' + href + '"]'); + if (res.length > 0) { + return res.eq('0'); + } + } + return null; + }, + animateLinks: function (linksContainer, additionalDelay) { var container = $(document); if (linksContainer !== undefined) { diff --git a/js/libs/fluidbook/fluidbook.menu.js b/js/libs/fluidbook/fluidbook.menu.js index bc2b47cf..5a60fa7a 100644 --- a/js/libs/fluidbook/fluidbook.menu.js +++ b/js/libs/fluidbook/fluidbook.menu.js @@ -179,7 +179,11 @@ FluidbookMenu.prototype = { openIframe: function (iframe, callback) { var $this = this; - var a = $('a[href="#/iframe/' + iframe + '"]'); + var href = '#/iframe/' + iframe; + var a = $('a[href="' + href + '"]'); + if ($(a).length === 0) { + a = this.fluidbook.links.getLinkByHref(href); + } var markup = decodeURIComponent($(a).attr('data-iframe')); var view = '
' + this.closeButton() + '
'; view += '
'; @@ -631,7 +635,7 @@ FluidbookMenu.prototype = { if (!fullscreen) { var ih = -1; try { - ih = $(iframe).get(0).contentWindow.document.body.offsetHeight; + ih = $(iframe).get(0).contentWindow.document.body.getBoundingClientRect().bottom; } catch (e) { ih = -1; } @@ -640,7 +644,6 @@ FluidbookMenu.prototype = { h = Math.min(ih, h); } } - break; case 'cart': w = 1024; -- 2.39.5