需求:禁止浏览器窗口放大缩小,废话不多说,直接上代码!
// 禁止(ctrl 和 + || -)缩放
prohibitScaling () {
const keyCodeMap = {
// 91: true, // command
61: true,
107: true, // 数字键盘 +
109: true, // 数字键盘 -
173: true, // 火狐 - 号
187: true, // +
189: true // -
}
// 覆盖ctrl||command + ‘+’/‘-’
document.onkeydown = function (event) {
const e = event || window.event
const ctrlKey = e.ctrlKey || e.metaKey
if (ctrlKey && keyCodeMap[e.keyCode]) {
e.preventDefault()
} else if (e.detail) { // Firefox
event.returnValue = false
}
}
// 覆盖鼠标滑动
document.body.addEventListener('wheel', (e) => {
if (e.ctrlKey) {
if (e.deltaY < 0) {
e.preventDefault()
return false
}
if (e.deltaY > 0) {
e.preventDefault()
return false
}
}
}, { passive: false })
}
// 调用这个方法
prohibitScaling()
移动端的禁止缩放,直接在html页面的head下面加一个meta标签
// user-scalable -- 禁止用户缩放 “1” 允许 “0” 不允许
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">