uniapp禁止页面上下滚动
时间: 2023-08-03 09:06:57 浏览: 298
在uniapp中禁止页面上下滚动可以通过以下两种方式实现:
1. 在 `App.vue` 中加入以下代码:
```html
<template>
<div>
<router-view></router-view>
</div>
</template>
<script>
export default {
mounted() {
// 禁止页面上下滚动
document.body.style.overflow = 'hidden';
},
beforeDestroy() {
// 恢复页面上下滚动
document.body.style.overflow = 'auto';
}
}
</script>
```
2. 在需要禁止滚动的页面中加入以下代码:
```html
<template>
<div class="scroll-wrapper">
<!-- 页面内容 -->
</div>
</template>
<script>
export default {
mounted() {
// 禁止页面上下滚动
document.querySelector('.scroll-wrapper').addEventListener('touchmove', function (e) {
e.preventDefault();
}, { passive: false });
},
beforeDestroy() {
// 恢复页面上下滚动
document.querySelector('.scroll-wrapper').removeEventListener('touchmove', function (e) {
e.preventDefault();
}, { passive: false });
}
}
</script>
<style>
.scroll-wrapper {
overflow-y: scroll;
-webkit-overflow-scrolling: touch;
height: 100%;
}
</style>
```
第二种方法比第一种方法更灵活,可以在需要禁止滚动的页面中单独控制。
阅读全文