<template>
<img ref="imgContainer" alt="测试 "
@mousewheel="handleZoomImg"
class="zoomImg"
src="../../img/test.png"
/>
</template>
<script>
mounted(){
document.getElementsByClassName('zoomImg')[0].addEventListener('DOMMouseScroll', this.handleZooming, true)
}
methods:{
handleZoomImg (evt) {
evt = evt || window.event
if (!evt) evt = window.event
if (evt.stopPropagation) {
evt.stopPropagation()
} else {
evt.cancelBubble = true
};
if (evt.preventDefault) {
evt.preventDefault()
} else {
evt.returnValue = false
};
let delta = 0
if (evt.wheelDelta) {
delta = evt.wheelDelta / 120
if (window.opera) delta = -delta
} else if (evt.detail) {
delta = -evt.detail / 3
}
let imgContainer = this.$refs.imgContainer
let width = imgContainer.offsetWidth
let height = imgContainer.offsetHeight
if (delta > 0) {
imgContainer.style.width = `${width * 1.1}px`
imgContainer.style.height = `${height * 1.1}px`
} else if (delta < 0) {
imgContainer.style.width = `${width * 0.9}px`
imgContainer.style.height = `${height * 0.9}px`
}
}
}
</script>