shenmf
shenmf
  • 发布:2025-08-07 10:31
  • 更新:2025-08-07 20:18
  • 阅读:124

【报Bug】scroll-view在pc微信浏览器的滚动条会自动隐藏,已经设置了组件的属性和深层的css,还是这样

分类:uni-app

产品分类: uniapp/H5

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: win11

HBuilderX类型: 正式

HBuilderX版本号: 4.74

浏览器平台: 微信内置浏览器

浏览器版本: 4.0.6

项目创建方式: HBuilderX

操作步骤:
  1. 自动检测微信浏览器

我们使用 isWechatBrowser() 函数来检测当前环境是否为微信浏览器:

import { isWechatBrowser } from './wechatBrowserUtils'  

const isWechat = isWechatBrowser()

2. 强制显示滚动条

在微信浏览器中,我们通过以下方式强制显示滚动条:

CSS 样式强制

/* 微信浏览器滚动条强制显示 */  
body.wechat-browser .table-scroll-container {  
  overflow: scroll !important;  
  -webkit-overflow-scrolling: touch !important;  
}  

body.wechat-browser .table-scroll-container::-webkit-scrollbar {  
  display: block !important;  
  width: 12px !important;  
  height: 16px !important;  
  visibility: visible !important;  
  opacity: 1 !important;  
}

JavaScript 动态处理

// 添加滚动事件监听,确保滚动条始终可见  
tableContainer.addEventListener('scroll', function (this: HTMLElement) {  
  // 强制重绘滚动条  
  this.style.overflow = 'hidden'  
  setTimeout(() => {  
    this.style.overflow = 'scroll'  
  }, 10)  
})

3. 自定义滚动条优化

对于自定义滚动条,我们也提供了微信浏览器的特殊处理:

/* 微信浏览器自定义滚动条样式 */  
body.wechat-browser .custom-scrollbar-container {  
  height: v-bind('(props.customScrollbarHeight + 2) + "px"');  
}  

body.wechat-browser .custom-scrollbar-thumb {  
  top: 1px;  
  height: calc(100% - 2px);  
}

预期结果:

滚动条一直显示

实际结果:

滚动条,滚动后会自行隐藏

bug描述:

scroll-view在pc微信浏览器的滚动条会自动隐藏,已经设置了组件的属性和深层的css,还是会自动隐藏。

2025-08-07 10:31 负责人:无 分享
已邀请:
DCloud_UNI_OttoJi

DCloud_UNI_OttoJi - 日常回复 uni-app/x 问题,如果艾特我没看到,请主动私信

先保证普通 index.html 能始终展示滚动条,排除宿主环境的特定规则

要回复问题请先登录注册