From a0f59826fe6f3c7250085c9ec55fd60259309ba9 Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 6 Oct 2026 23:38:18 +0800 Subject: [PATCH] =?UTF-8?q?fix(payment):=20=E5=94=AE=E5=90=8E=E5=BC=B9?= =?UTF-8?q?=E7=AA=97=E6=BB=9A=E5=8A=A8=E5=AE=B9=E5=99=A8=E6=94=B9=E7=94=A8?= =?UTF-8?q?=20no-scrollbar=EF=BC=8C=E6=B6=88=E9=99=A4=E5=BC=B9=E7=AA=97?= =?UTF-8?q?=E8=BE=B9=E7=BC=98=E6=BB=9A=E5=8A=A8=E6=A0=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit mini-scrollbar 是 3px 可见细滚动条(举报弹窗 600px 宽弹窗用的写法); modal-mini 这类带炫彩横幅的表单弹窗,主题统一走禁封申诉/记录弹窗的口径: scroll-y + no-scrollbar 完全隐藏滚动条(含细滚动条)+ 50vh 内层滚动。 申请与售后详细两个滚动容器一并切换,滚动行为不变、只是不再露出滚动栏。 --- assets/js/order-after-sale.js | 5 +++-- tests/widget-system/after-sale-policy-contract.test.cjs | 6 ++++++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/assets/js/order-after-sale.js b/assets/js/order-after-sale.js index 21aabf87..95572af3 100644 --- a/assets/js/order-after-sale.js +++ b/assets/js/order-after-sale.js @@ -115,7 +115,8 @@ var html = '
'; html += colorfulHeader('申请售后', 'fa-undo-alt'); html += '
'; - html += '
'; + // 滚动容器与禁封申诉弹窗一致:no-scrollbar 完全隐藏滚动条(含细滚动条)+ 50vh 内层滚动。 + html += '
'; html += orderSummaryHtml(order); if (reasons.length) { @@ -174,7 +175,7 @@ var html = '
'; html += colorfulHeader('售后详细', 'fa-clipboard-list'); - html += '
'; + html += '
'; html += orderSummaryHtml(order); html += '
' + diff --git a/tests/widget-system/after-sale-policy-contract.test.cjs b/tests/widget-system/after-sale-policy-contract.test.cjs index bbb81954..ed2b9ab7 100644 --- a/tests/widget-system/after-sale-policy-contract.test.cjs +++ b/tests/widget-system/after-sale-policy-contract.test.cjs @@ -253,6 +253,12 @@ test('frontend after-sale modals are standalone and config-driven', () => { assert.match(js, /modal-colorful-header colorful-bg jb-blue/) assert.match(js, /AksrtModalRuntime\.open\(\{/) + // 滚动容器与禁封申诉弹窗同口径:no-scrollbar 完全隐藏滚动条(含细滚动条), + // 避免 modal-mini 弹窗边缘出现可见滚动栏。 + assert.match(js, /'
'/) + assert.match(js, /'
'/) + assert.ok(!js.includes('mini-scrollbar'), 'after-sale modals must not render a visible scrollbar') + // 申请表单:预置原因徽章、所需资料、必填申请说明(placeholder 取后台配置) assert.match(js, /reasonOptions\(\)/) assert.match(js, /materialOptions\(\)/)