Svelte可排序列表中焦点丢失行为不一致问题求助
手动可排序列表键盘导航焦点丢失问题
功能与操作步骤
- 开发功能:支持键盘导航的手动可排序列表
- 操作流程:
- 按Tab键让列表获取焦点
- 按上下箭头键导航选中列表项
- 按空格键"抬起"当前元素,通过上下箭头调整位置后,再次按空格键完成"放下"
问题详情
- 异常现象:元素向下移动1位时正常,但向上移动1位或向下移动2位及以上时,焦点会丢失
- 浏览器兼容性差异:该问题仅在Chromium内核浏览器中出现,Firefox和Safari(Windows、macOS平台)表现均正常
- 临时调整的影响:移除
#each循环的key(从{#each items as item, index (item.id)}修改为{#each items as item, index})后,Chromium浏览器的表现恢复正常,但这种做法并非最佳实践,还会引发其他问题 - 复现方式:可通过Svelte REPL测试复现该问题
内容的提问来源于stack exchange,提问作者Rodrigo D'Agostino
相关产品推荐
相关产品推荐

