297648f1
梁灏
fixed #1063
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
// used for Modal & $Spin
import { getScrollBarSize } from '../../utils/assist';
export default {
methods: {
checkScrollBar () {
let fullWindowWidth = window.innerWidth;
if (!fullWindowWidth) { // workaround for missing window.innerWidth in IE8
const documentElementRect = document.documentElement.getBoundingClientRect();
fullWindowWidth = documentElementRect.right - Math.abs(documentElementRect.left);
}
this.bodyIsOverflowing = document.body.clientWidth < fullWindowWidth;
if (this.bodyIsOverflowing) {
this.scrollBarWidth = getScrollBarSize();
}
},
|
1635ec37
郑敏
fix bug #3792 Pag...
|
16
17
18
19
|
checkMaskInVisible () {
let masks = document.getElementsByClassName('ivu-modal-mask') || [];
return Array.from(masks).every(m => m.style.display === 'none' || m.classList.contains('fade-leave-to'));
},
|
297648f1
梁灏
fixed #1063
|
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
setScrollBar () {
if (this.bodyIsOverflowing && this.scrollBarWidth !== undefined) {
document.body.style.paddingRight = `${this.scrollBarWidth}px`;
}
},
resetScrollBar () {
document.body.style.paddingRight = '';
},
addScrollEffect () {
this.checkScrollBar();
this.setScrollBar();
document.body.style.overflow = 'hidden';
},
removeScrollEffect() {
|
1635ec37
郑敏
fix bug #3792 Pag...
|
34
35
36
37
|
if (this.checkMaskInVisible()) {
document.body.style.overflow = '';
this.resetScrollBar();
}
|
297648f1
梁灏
fixed #1063
|
38
39
|
}
}
|
1635ec37
郑敏
fix bug #3792 Pag...
|
40
|
};
|