Chrome 在离线时禁用按钮和输入元素

Posted

技术标签:

【中文标题】Chrome 在离线时禁用按钮和输入元素【英文标题】:Chrome disables buttons and input elements when offline 【发布时间】:2018-09-29 18:49:18 【问题描述】:

我正在开发一个渐进式网络应用程序,它有一个文件输入按钮,可以从设备存储中选择一个文件。它在 chrome 桌面版本上离线工作正常,但 android 版本禁用该按钮。我不知道如何解决这个问题。目前项目中没有 css,只有 service worker 的 htmljavascript 代码。

【问题讨论】:

在Android浏览器中,在线时是否启用输入? 是的,它已启用 我尝试远程调试 android 浏览器并基本上运行“document.getElementById("fileinput").disabled”,它返回 false。但它显然被禁用了。标记中也没有禁用属性的迹象。 同样需要一个显示问题的示例页面。 @mostruash 你可以试试这个:justinwoo.github.io/purescript-web-audio-player-demo/index.html 我也有这个问题,现在这个我已经使用了将近 1.5 年的应用程序无法在我的航班上离线使用。如果你设法让它真正离线工作,你能告诉我怎么做吗?我一直在使用普通的 Android 8.1.0,这是对我这样做的第一个版本。 【参考方案1】:

您的代码似乎没问题。所以可能是系统的设置。

查看谷歌教程 https://developers.google.com/web/fundamentals/codelabs/your-first-pwapp/?hl=en#download_the_code

【讨论】:

这不是答案。 当我说系统时,我的意思是它。正如链接所解释的,浏览器和 SO 配置。我认为这可能会有所帮助,但可能离问题还很远。 请阅读this【参考方案2】:

我弄清楚我自己的页面发生了什么——不知何故,每次我在主屏幕上点击应用程序时,它都会从 Chrome 转到保存的离线页面,而不是尝试实际使用我的 PWA,而那些保存的离线页面的输入被禁用。

我不得不从 Chrome 中删除已保存的网页才能让我的网页再次工作。

我只是注意到,因为我更改了一些文本,但没有正确更新。

【讨论】:

以上是关于Chrome 在离线时禁用按钮和输入元素的主要内容,如果未能解决你的问题,请参考以下文章

如何在离线时安装 npm 包?

CloudKit - 当用户在离线时添加、修改或删除对象时该怎么办?

MoPub“onInterstitialFailed”adListener 在离线时不起作用

Parse.com 用户在离线时注销

仅在离线时使用 ServiceWorker 缓存

HERE 地图自动建议在离线时不会从下载的地图包中返回预期结果