PluginProbe ʕ •ᴥ•ʔ
FrontBlocks for Gutenberg/GeneratePress / 1.5.2
FrontBlocks for Gutenberg/GeneratePress v1.5.2
1.5.2 1.5.1 1.4.0 1.5.0 trunk 0.2.0 0.2.1 0.2.2 0.2.3 0.2.4 0.2.5 1.0.0 1.0.1 1.0.2 1.0.3 1.0.4 1.1.0 1.2.0 1.2.1 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 ci-artifacts
frontblocks / assets / scroll-top / frontblocks-scroll-top.js
frontblocks / assets / scroll-top Last commit date
frontblocks-scroll-top.css 1 week ago frontblocks-scroll-top.js 1 week ago
frontblocks-scroll-top.js
44 lines
1 /**
2 * FrontBlocks Scroll to Top
3 *
4 * @package FrontBlocks
5 * @version 1.0.0
6 */
7
8 (function() {
9 'use strict';
10
11 if (document.readyState === 'loading') {
12 document.addEventListener('DOMContentLoaded', init);
13 } else {
14 init();
15 }
16
17 function init() {
18 var button = document.getElementById('frbl-scroll-top');
19
20 if (!button) {
21 return;
22 }
23
24 var scrollThreshold = 300;
25
26 function updateVisibility() {
27 var scrollTop = window.pageYOffset || document.documentElement.scrollTop;
28 if (scrollTop >= scrollThreshold) {
29 button.classList.add('frbl-show');
30 } else {
31 button.classList.remove('frbl-show');
32 }
33 }
34
35 button.addEventListener('click', function() {
36 window.scrollTo({ top: 0, behavior: 'smooth' });
37 });
38
39 window.addEventListener('scroll', updateVisibility, { passive: true });
40
41 updateVisibility();
42 }
43 })();
44