mirror of
https://github.com/ElemeFE/element.git
synced 2025-12-13 11:34:02 +08:00
* Image: Fix shield the page when preview big image * refine * Image:fix page scroll when use image-viewer by keyup and keydown * add notes
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<transition name="viewer-fade">
|
||||
<div class="el-image-viewer__wrapper" :style="{ 'z-index': zIndex }">
|
||||
<div tabindex="-1" ref="el-image-viewer__wrapper" class="el-image-viewer__wrapper" :style="{ 'z-index': zIndex }">
|
||||
<div class="el-image-viewer__mask"></div>
|
||||
<!-- CLOSE -->
|
||||
<span class="el-image-viewer__btn el-image-viewer__close" @click="hide">
|
||||
@@ -294,6 +294,9 @@ export default {
|
||||
},
|
||||
mounted() {
|
||||
this.deviceSupportInstall();
|
||||
// add tabindex then wrapper can be focusable via Javascript
|
||||
// focus wrapper so arrow key can't cause inner scroll behavior underneath
|
||||
this.$refs['el-image-viewer__wrapper'].focus();
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
@@ -38,6 +38,8 @@
|
||||
SCALE_DOWN: 'scale-down'
|
||||
};
|
||||
|
||||
let prevOverflow = '';
|
||||
|
||||
export default {
|
||||
name: 'ElImage',
|
||||
|
||||
@@ -215,9 +217,13 @@
|
||||
}
|
||||
},
|
||||
clickHandler() {
|
||||
// prevent body scroll
|
||||
prevOverflow = document.body.style.overflow;
|
||||
document.body.style.overflow = 'hidden';
|
||||
this.showViewer = true;
|
||||
},
|
||||
closeViewer() {
|
||||
document.body.style.overflow = prevOverflow;
|
||||
this.showViewer = false;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user