我正在使用React编写一个前端应用程序,并在其中一个组件上渲染动画。如果用户在其设置中禁用了动画,我希望在其位置显示一个静态图像。有没有一种方法可以判断动画是否被禁用,这样我就可以进行一些条件渲染了?
发布于 2021-07-09 02:17:15
@Phix给了the relevant standard。
要根据请求签入JavaScript,您可以使用
const query = window.matchMedia(
'(prefers-reduced-motion: reduce)');
if(query.matches) ... else ...
在React中,您可以按如下方式使用@react-hook/media-query:
import {useMediaQuery} from '@react-hook/media-query'
const Component = () => {
const matches = useMediaQuery(
'(prefers-reduced-motion: reduce)');
return matches ? ... : ...;
}
https://stackoverflow.com/questions/68306622
复制相似问题