vue项目中如何禁止移动端页面滚动

通过监听 touchmove 事件:当手指在屏幕上滑动的时候连续地触发。在这个事件发生期间,调用preventDefault()事件可以阻止滚动。

// 禁止页面滚动
var forbidScroll = function(e) {
    
    
	e.preventDefault();
};
// 通过 $once 来监听生命周期 beforeDestroy 钩子
this.$once("hook:beforeDestroy", () => {
    
    
	window.removeEventListener("touchmove", forbidScroll);
});
function forbidTouchMove() {
    
    
	document.body.style.overflow = "hidden";
	window.addEventListener("touchmove", forbidScroll, {
    
     passive: false });
}
forbidTouchMove();

猜你喜欢

转载自blog.csdn.net/thirteen_king13/article/details/114093302