检测边缘亮/暗主题变化

问题描述 投票:0回答:1

有没有办法让网页检测Microsoft Edge中的主题何时发生变化(亮/暗)?

例如,如果应用程序以高对比度运行,我可以使用-ms-hight-contrast来应用不同的CSS。对于Edge Light / Dark主题,是否有类似的媒体功能?

microsoft-edge microsoft-edge-extension
1个回答
1
投票

要获取应用的主题,通常我们可以使用Theme.getCurrent()方法。

var getting = browser.theme.getCurrent(windowId) // integer

但目前,MS Edge不支持它。

参考:

theme.getCurrent()

作为替代方式。使用Javascript代码,您可以尝试访问注册表项值以了解当前应用的主题。

您需要访问以下密钥的值。

HKEY_CURRENT_USER\SOFTWARE\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppContainer\Storage\microsoft.microsoftedge_8wekyb3d8bbwe\MicrosoftEdge\Main

主题DWORD

0 =浅色主题

1 =黑暗主题

要获取JavaScript示例以访问注册表项,您可以参考下面的链接。

参考:

JScript/Javascript function to get a list of registry Values under Key

注意: - 很多时候此文件夹在注册表中不可用。用户需要先创建它。在那种情况下,此方法将无法正常工作。

问候

迪帕克

© www.soinside.com 2019 - 2024. All rights reserved.