Javascript 在旧chrome版本上检测独立模式

Javascript 在旧chrome版本上检测独立模式,javascript,jquery,google-chrome,Javascript,Jquery,Google Chrome,根据,display mode:standalone只能在M48或更高版本上检测。有没有办法检测旧版本上的模式?没有这是不可能的。 @仅从Chrome 48开始支持显示模式 虽然这不是一个直接的答案,但它提供了一个解决办法 就我对本文的理解而言,您可以将您的网站(在manifest.json中)配置为使用querystring打开(例如,如果它是从主屏幕打开的)。因此,您可以在DOM上设置一个标志——比如说,将类添加到body标记中。通过这种方式,如果在独立模式下运行,您可以在更高的css或j

根据,
display mode:standalone
只能在M48或更高版本上检测。有没有办法检测旧版本上的模式?

没有这是不可能的。

@仅从Chrome 48开始支持显示模式


虽然这不是一个直接的答案,但它提供了一个解决办法

就我对本文的理解而言,您可以将您的网站(在manifest.json中)配置为使用querystring打开(例如,如果它是从主屏幕打开的)。因此,您可以在DOM上设置一个标志——比如说,将类添加到
body
标记中。通过这种方式,如果在独立模式下运行,您可以在更高的css或js中检测

例如:

var isstandlone=false;
if(location.search.indexOf('standalone=true')>-1){
IsStandlone=真;
document.body.classList.add('standalone-mode');
}
//从现在起,您可以通过检查'isStandalone'参数来检查是否在独立模式下运行。
标题{
背景:红色;
}
/*这是一种仅适用于独立模式的样式*/
body.standalone标头{
背景:绿色
}

对于封装在electron中的应用程序,您可以使用以下内容:


不,不可能。仅限M46和更新版本,无法检查M46和更旧版本是否提供显示模式。这是一个很好的解决办法,但我认为即使在Chrome>48版本上,URL中也会有“standalone=true”。如果我理解正确,我不确定如果在Chrome>48版本上工作,问题出在哪里,是否仍然适用于您。。
window && window.process && window.process.type
navigator.userAgent.toLowerCase().indexOf(' electron/') > -1;