检测边缘亮/暗主题变化

时间:2018-09-06 16:40:49

标签: microsoft-edge microsoft-edge-extension

网页是否可以检测Microsoft Edge中的主题何时更改(浅/深)?

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

1 个答案:

答案 0 :(得分: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

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

致谢

Deepak