Commit 098e9cf33db68ed9534129c5ef25e58c602eeb87
1 parent
e6ffb67e
perf(src/packages): 优化图表全屏按esc退出全屏背景是白色的问题
Showing
1 changed file
with
19 additions
and
0 deletions
... | ... | @@ -5,8 +5,10 @@ export const useFullScreen = (domName: any, htmlName: HTMLHtmlElement) => { |
5 | 5 | if (isFullScreen) { |
6 | 6 | if (document.exitFullscreen) { |
7 | 7 | document.exitFullscreen() |
8 | + domName.style.background = currentDatkTheme === 'light' ? '' : '' | |
8 | 9 | } |
9 | 10 | } else { |
11 | + //兼容其他浏览器 | |
10 | 12 | if (domName.requestFullscreen) { |
11 | 13 | domName.requestFullscreen() |
12 | 14 | domName.style.background = currentDatkTheme === 'light' ? 'white' : '#18181c' |
... | ... | @@ -21,4 +23,21 @@ export const useFullScreen = (domName: any, htmlName: HTMLHtmlElement) => { |
21 | 23 | domName.style.background = currentDatkTheme === 'light' ? 'white' : '#18181c' |
22 | 24 | } |
23 | 25 | } |
26 | + //fix 浏览器监听esc退出 | |
27 | + function exitHandler() { | |
28 | + if ( | |
29 | + !(document as any).webkitIsFullScreen && | |
30 | + !(document as any).mozFullScreen && | |
31 | + !(document as any).msFullscreenElement | |
32 | + ) { | |
33 | + domName.style.background = currentDatkTheme === 'light' ? '' : '' | |
34 | + } | |
35 | + } | |
36 | + // 监听fullscreenchange事件(全屏模式的变化) | |
37 | + if (document.addEventListener) { | |
38 | + document.addEventListener('webkitfullscreenchange', exitHandler, false) | |
39 | + document.addEventListener('mozfullscreenchange', exitHandler, false) | |
40 | + document.addEventListener('fullscreenchange', exitHandler, false) | |
41 | + document.addEventListener('MSFullscreenChange', exitHandler, false) | |
42 | + } | |
24 | 43 | } | ... | ... |