搜索框:修复「直接回车被套用第一条联想词」的问题
原实现只要联想下拉开着,回车就把输入框内容替换成第一条建议 —— 用户自己输入、 而建议里没有的词会被悄悄换掉。现在只有**用 ↓/↑ 选中**(或鼠标划过)某条建议时, 回车才按它搜索;没选中就一律用输入框原文。 - app.js:引入选中项状态(items / active)。↓/↑ 在下拉里循环移动高亮、Escape 关闭、 一开始打字就取消选中;鼠标划过同步高亮,回车即可确认。选中态只动高亮、不动输入框, 回车时才落到输入框。 - style.css:键盘高亮复用 hover 的样式(#word li:hover, #word li.active)。 验证: - jsdom 交互测试 25/25 —— 喂的是**真实渲染出来的首页 HTML**,并显式执行仓库里 的 app.js 源码(jsdom 不会自己加载外部 script)。核心断言是「直接回车不改动输入框」。 - 反向验证:把回车逻辑改回旧行为后,该核心断言确实失败(连同 9 项方向键断言), 说明这套测试真能抓住这个 bug。 - e2e 113/113 无回归;线上部署 0 FAIL(68 条静态断言,含负向断言「旧行为已移除」; 38 个文件哈希逐字节一致);线上几何 25/25; 再直连线上核验 app.js / style.css 内容与版本号均已更新。
This commit is contained in:
@@ -94,7 +94,7 @@ a { text-decoration: none; color: inherit; }
|
||||
font-size: 15px; border-radius: 10px; color: #3d4753;
|
||||
white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
|
||||
}
|
||||
#word li:hover { background: var(--primary-soft); color: var(--primary); }
|
||||
#word li:hover, #word li.active { background: var(--primary-soft); color: var(--primary); }
|
||||
|
||||
/* ---------- 板块卡片 ---------- */
|
||||
.mylist {
|
||||
|
||||
Reference in New Issue
Block a user