diff options
Diffstat (limited to 'assets/js/fullscreen.js')
-rw-r--r-- | assets/js/fullscreen.js | 27 |
1 files changed, 23 insertions, 4 deletions
diff --git a/assets/js/fullscreen.js b/assets/js/fullscreen.js index e191854..e3cc342 100644 --- a/assets/js/fullscreen.js +++ b/assets/js/fullscreen.js | |||
@@ -1,15 +1,27 @@ | |||
1 | // get with web apis #fullscren element and on click toggle fullscreen | 1 | // page |
2 | const fullscreen = document.getElementById('fullscreen'); | 2 | const fullscreen = document.getElementById('fullscreen'); |
3 | const fullscreenIcon = document.getElementById('fullscreen-icon'); | ||
4 | const smallscreenIcon = document.getElementById('smallscreen-icon'); | ||
3 | const elem = document.documentElement; | 5 | const elem = document.documentElement; |
4 | fullscreen.addEventListener('click', () => { | 6 | |
7 | // Functions | ||
8 | |||
9 | function toggleFullscreen(event) { | ||
10 | // check if the event is a keydown event or a click event | ||
11 | if (event.type === 'keydown') { | ||
12 | // check if the key pressed is '/' key | ||
13 | if (event.key !== '/') return; | ||
14 | } | ||
5 | if (document.fullscreenElement) { | 15 | if (document.fullscreenElement) { |
6 | closeFullscreen(); | 16 | closeFullscreen(); |
7 | } else { | 17 | } else { |
8 | openFullscreen(); | 18 | openFullscreen(); |
9 | } | 19 | } |
10 | }); | 20 | } |
11 | 21 | ||
12 | function openFullscreen() { | 22 | function openFullscreen() { |
23 | smallscreenIcon.classList.toggle('hide'); | ||
24 | fullscreenIcon.classList.toggle('hide'); | ||
13 | if (elem.requestFullscreen) { | 25 | if (elem.requestFullscreen) { |
14 | elem.requestFullscreen(); | 26 | elem.requestFullscreen(); |
15 | } else if (elem.webkitRequestFullscreen) { /* Safari */ | 27 | } else if (elem.webkitRequestFullscreen) { /* Safari */ |
@@ -20,6 +32,8 @@ function openFullscreen() { | |||
20 | } | 32 | } |
21 | 33 | ||
22 | function closeFullscreen() { | 34 | function closeFullscreen() { |
35 | smallscreenIcon.classList.toggle('hide'); | ||
36 | fullscreenIcon.classList.toggle('hide'); | ||
23 | if (document.exitFullscreen) { | 37 | if (document.exitFullscreen) { |
24 | document.exitFullscreen(); | 38 | document.exitFullscreen(); |
25 | } else if (document.webkitExitFullscreen) { /* Safari */ | 39 | } else if (document.webkitExitFullscreen) { /* Safari */ |
@@ -27,4 +41,9 @@ function closeFullscreen() { | |||
27 | } else if (document.msExitFullscreen) { /* IE11 */ | 41 | } else if (document.msExitFullscreen) { /* IE11 */ |
28 | document.msExitFullscreen(); | 42 | document.msExitFullscreen(); |
29 | } | 43 | } |
30 | } \ No newline at end of file | 44 | } |
45 | |||
46 | // Listeners | ||
47 | |||
48 | fullscreen.addEventListener('click', toggleFullscreen); | ||
49 | document.addEventListener('keydown', toggleFullscreen); \ No newline at end of file | ||