禁用除IE之外的所有浏览器的HTML5 AppCache

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

[我有一个基于Angular的PWA应用程序(基于service-worker),在所有现代浏览器中都可以脱机工作,为支持IE,我添加了“ manifest.appcache”,使IE可以通过HTML5 App Cache脱机工作。

是否有任何方法可以在除IE之外的所有其他浏览器中禁用Appcache?当前在现代浏览器中Appcache还与服务人员一起工作

我在下面尝试过

<html lang="en" manifest="manifest.appcache" *ngIf="isIE">
<html lang="en" *ngIf="!isIE">

在组件中

const isIE = /msie\s|trident/i.test(window.navigator.userAgent);

但是似乎HTML渲染在isIE的组件设置值之前

javascript angular internet-explorer progressive-web-apps html5-appcache
2个回答
1
投票

尝试动态添加manifest属性

public constructor(@Inject(DOCUMENT) private  doc: Document, private renderer: Renderer2)
{
  const isIE = /msie\s|trident/i.test(window.navigator.userAgent);
  if(isIE)
  {
    this.renderer.setAttribute(this.doc.documentElement,"manifest","manifest.appcache");
  }
}

0
投票

我尝试搜索,但没有得到此问题的任何解决方案。

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