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\(\)/)