diff --git a/docs/main.js b/docs/main.js index 49f52a8..6787e8e 100644 --- a/docs/main.js +++ b/docs/main.js @@ -17,13 +17,19 @@ PDFJS.workerSrc = './shared/pdf.worker.js'; // Render stuff let NUM_PAGES = 0; +let renderedPages = {}; document.getElementById('content-wrapper').addEventListener('scroll', function (e) { let visiblePageNum = Math.round(e.target.scrollTop / PAGE_HEIGHT) + 1; let visiblePage = document.querySelector(`.page[data-page-number="${visiblePageNum}"][data-loaded="false"]`); + if (visiblePage) { - setTimeout(function () { - UI.renderPage(visiblePageNum, RENDER_OPTIONS); - }); + // Prevent invoking UI.renderPage on the same page more than once. + if ( !renderedPages[visiblePageNum] ) { + renderedPages[visiblePageNum] = true; + setTimeout(function () { + UI.renderPage(visiblePageNum, RENDER_OPTIONS); + }); + } } }); diff --git a/scripts/web b/scripts/web index ba17dd5..1e46924 100755 --- a/scripts/web +++ b/scripts/web @@ -1,7 +1,7 @@ #!/bin/bash ./scripts/shared -cp -rf shared/ docs/shared/ +cp -rf shared docs server=./node_modules/.bin/webpack-dev-server -$server --inline --config ./webpack.web.js --content-base web/ +$server --inline --config ./webpack.web.js --content-base docs/ $* \ No newline at end of file