当用户通过单击链接组件导航到新页面时,屏幕阅读器会以正确的顺序完美地读取新页面。如果用户通过按 Enter 或空格键选择新页面,浏览器仍会导航到正确的页面,但屏幕阅读器不会读取页面内容。
新页面导航的代码如下所示:
<Card className={classes.root}>
<Link to={`/event/${eventId}`} component={CardActionArea}>
<CardMedia
className={classes.media}
/>
<CardContent className={classes.cardContent}>
...some info..
</CardContent>
</Link>
</Card>
我尝试通过创建 keyDownEvent 来解决此问题,如下所示,但没有用:
const elementRef = React.createRef<HTMLAnchorElement>();
const handleKeyDown = (e) => {
if (e.keyCode === 13 || e.keyCode === 32) {
e.preventDefault();
elementRef.current.click();
}
}
并在链接中调用它
<Link to={`/event/${eventId}`} component={CardActionArea} onKeyDown={(e) => handleKeyDown(e)}>
有人知道我哪里出错了或者我应该尝试什么吗?
侃侃尔雅
相关分类