
禁用 html 中使用 ctrl+滚轮放大缩小
若要禁用使用 Ctrl+滚轮对 HTML 元素进行放大缩小,需要采用以下方法:
1、原生 JavaScript
document.addEventListener('mousewheel', function (e) {
e = e || window.event;
if ((e.wheelDelta && event.ctrlKey) || e.detail) {
event.preventDefault();
}
});
document.addEventListener('keydown', function (event) {
if ((event.ctrlKey === true || event.metaKey === true)
&& (event.keyCode === 61 || event.keyCode === 107
|| event.keyCode === 173 || event.keyCode === 109
|| event.keyCode === 187 || event.keyCode === 189)) {
event.preventDefault();
}
});2、Vue 中
methods: {
keepRatio() {
// 缩放比例
var ratio = 0;
// 获取窗口对象
var screen = window.screen;
var ua = navigator.userAgent.toLowerCase();
// 获取像素大小的比例
if (window.devicePixelRatio !== undefined) {
ratio = window.devicePixelRatio;
}
// 获取 IE 浏览器下的缩放比例
else if (ua.indexOf('msie')) {
if (screen.deviceXDPI && screen.logicalXDPI) {
ratio = screen.deviceXDPI / screen.logicalXDPI;
}
}
// 获取其他浏览器的缩放比例
else if (window.outerWidth !== undefined && window.innerWidth !== undefined) {
ratio = window.outerWidth / window.innerWidth;
}
// 保留两位小数
if (ratio) {
ratio = Math.round(ratio * 100);
}
this.ratio = (ratio / 100).toFixed(2);
// 缩放还原
document.body.style.zoom = 1 / this.ratio;
}
}
mounted() {
this.keepRatio();
window.addEventListener('resize', () => {
this.keepRatio();
});
} 标签: JS




还木有评论哦,快来抢沙发吧~