Chrome的Devtools是否使用了暗黑模式,有没有一种方法可以检测?

5
在Javascript中,从一个页面而不是从devtools自身,是否有一种方法可以确定Chrome的devtools是否使用暗模式而不是“普通模式”?我确实找到了一个关于这个问题的bug报告,但看起来只与Chrome扩展相关。

是的。如果您在开发工具上打开元素检查器,类-theme-with-dark-background将附加到文档主体上。从那里,您可以编写一些JavaScript来获得所需的答案。 - Seiyria
这个类可以从网站上访问,还是只能在开发工具中使用? - Alexis Tyler
开发工具本身是一个可检查的浏览器窗口。至于如何从另一个上下文(比如Chrome扩展或父级Chrome窗口)访问此信息,我不知道是否可能。 - Seiyria
那并没有回答这个问题。我已经提到扩展可以通过内置对象访问它。 - Alexis Tyler
1
如果您已经打开了开发工具自身的开发工具,则可以提供答案。您没有指定您尝试获取此信息的上下文。 - Seiyria
应该预料到这不是来自开发工具。如果我已经打开了它们并且可以看到它处于暗模式下和/或可以访问我特别提到的js变量,那么为什么我还想要一个重复我已经说过的答案呢? - Alexis Tyler
1个回答

7
不,它不能从页面上获取。只能通过javascript扩展使用:chrome.devtools.panels.themeName 引用:
用户DevTools设置中设置的颜色主题名称。可能的值:default(默认)和dark。自Chrome 59以来。
来源:https://developer.chrome.com/extensions/devtools_panels 因此,在技术上,可以编写一个chrome扩展程序,读取该值,然后通过类或javascript变量将其公开到页面上。 但是,要求您的访问者安装扩展程序以检测夜间模式实在不现实。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接