根据this article,display-mode: standalone
只能检测M48或更新版本。有没有办法检测旧版本的模式?
答案 0 :(得分:7)
不,这是不可能的。 Check this article
仅支持从Chrome 48开始支持显示模式的@supports。
答案 1 :(得分:1)
虽然这不是一个直接的答案,但它提供了一种解决方法。
根据我对本文的理解,如果从主屏幕打开,您可以配置您的网站(在 manifest.json 中)以使用查询字符串打开(例如)。所以你可以在DOM上设置一个标志 - 假设在body
标签中添加类。通过这种方式,如果您在独立模式下运行,您可以在eitgher css或js中进行检测。
例如:
var isStandalone = false;
if (location.search.indexOf('standalone=true') > -1) {
isStandalone = true;
document.body.classList.add('standalone-mode');
}
// from now on you can check if you run in standalone by checking 'isStandalone' param.
header {
background: red;
}
/* this is a style for standalone mode only */
body.standalone header {
background: green
}
答案 2 :(得分:0)
对于包裹在电子中的应用程序,您可以使用此处描述的内容:https://github.com/electron/electron/issues/2288
window && window.process && window.process.type
或
navigator.userAgent.toLowerCase().indexOf(' electron/') > -1;