diff --git a/src/assets/css/site.css b/src/assets/css/site.css index 627145abc1..da58848cdc 100644 --- a/src/assets/css/site.css +++ b/src/assets/css/site.css @@ -120,3 +120,7 @@ div[data-role=page] { .headroom--unpinned { transform: translateY(-100%); } + +.force-scroll { + overflow-y: scroll; +} diff --git a/src/components/htmlvideoplayer/plugin.js b/src/components/htmlvideoplayer/plugin.js index 987117d173..e8521d0351 100644 --- a/src/components/htmlvideoplayer/plugin.js +++ b/src/components/htmlvideoplayer/plugin.js @@ -110,7 +110,7 @@ define(['browser', 'require', 'events', 'apphost', 'loading', 'dom', 'playbackMa let animatedPage = document.querySelector('.page:not(.hide)'); animatedPage.classList.add('hide'); // At this point, we must hide the scrollbar placeholder, so it's not being displayed while the item is being loaded - document.getElementsByTagName('body')[0].style = null; + document.body.classList.remove('force-scroll'); } function zoomIn(elem) { diff --git a/src/components/skinManager.js b/src/components/skinManager.js index fe64df1f2e..5e5bac5731 100644 --- a/src/components/skinManager.js +++ b/src/components/skinManager.js @@ -138,7 +138,7 @@ define(['apphost', 'userSettings', 'browser', 'events', 'pluginManager', 'backdr function onViewBeforeShow(e) { if (e.detail && e.detail.type === 'video-osd') { // This removes the space that the scrollbar takes while playing a video - document.getElementsByTagName('body')[0].style = null; + document.body.classList.remove('force-scroll'); return; } @@ -159,7 +159,7 @@ define(['apphost', 'userSettings', 'browser', 'events', 'pluginManager', 'backdr } // This keeps the scrollbar always present in all pages, so we avoid clipping while switching between pages // that need the scrollbar and pages that don't. - document.getElementsByTagName('body')[0].style = 'overflow-y: scroll'; + document.body.classList.add('force-scroll'); } document.addEventListener('viewshow', onViewBeforeShow);