【发布时间】:2022-01-20 04:24:13
【问题描述】:
我最近在我的代码中添加了这样的内容:
$(window).on('beforeunload', function () {
$('.whirly-loader').show(); //SPINER
})
因此,只要用户转到我网络的另一端,微调器就会出现。它在大多数情况下都有效。 但是,在应用程序的某些部分,客户端开始转到另一端,服务器使用此标头响应:
Cache-Control
max-age=0, must-revalidate, private
Connection
Keep-Alive
Content-Disposition
attachment;filename=suministro.csv
Content-Type
text/csv; charset=utf-8
[...]
这可以防止页面重新加载,并且只显示要求下载或打开文档的窗口。 我的问题是即使页面停止加载,微调器仍然显示
即使页面由于标题而没有重新加载,应该隐藏我的微调器的事件是什么?
【问题讨论】:
-
我不认为有任何事件你可以听这个。如果没有加载新页面,您最多可以尝试设置超时,并在一段时间后再次禁用微调器。或者,如果您知道哪些方式可以“离开”页面触发这样的特定响应,您可以尝试以某种方式确定(单击相应链接/提交按钮上的处理程序),并且在这些情况下不显示微调器开始。
-
浏览器已经显示进度指示器。不要自己做。这是不好的用户体验实践,不应该这样做。
标签: javascript dom-events