首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何检测已取消页面加载的用户

如何检测已取消页面加载的用户
EN

Stack Overflow用户
提问于 2019-07-09 07:56:31
回答 2查看 1.4K关注 0票数 2

我有一个有基本表格的网页。在点击"submit“和页面重新加载结果之间有一个不可忽略的等待时间,所以我在用户等待时添加了一些旋转器。

它非常直截了当,下面是HTML:

代码语言:javascript
运行
AI代码解释
复制
<div id="loadingBox" style="display:none;">
    <!---put the actual loader here--->
</div>

以下是用户单击submit后使旋转器可见的基本事件处理程序:

代码语言:javascript
运行
AI代码解释
复制
$("#submitButton").submit(function(e)
{
    $("#loadingBox").css('display', 'block');
});

问题是用户可以单击submit,使该框出现,然后单击“转义”或单击“浏览器”按钮以取消页面加载,而旋转器则继续旋转。

我加上这个是为了让旋转器在点击“逃逸”时消失:

代码语言:javascript
运行
AI代码解释
复制
$(document).keydown(function (e)
{
    if(e.keyCode == 27)
    {
        $("#loadingBox").css('display', 'none');
    }
})

如何检测用户已单击“取消页面加载”按钮?在单击该按钮时,我找不到触发的事件,也找不到反映该按钮的就绪状态或其他属性。我担心的是用户单击cancel load按钮,然后旋转器就不会消失,用户会盯着旋转器,认为页面仍然在做什么,但它没有做任何事情。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-07-10 09:04:22

我就是这样解决我的问题的。

首先,我将页面转换为使用AJAX。我使用的是水瓶,所以这个网页非常有用:https://medium.com/@doobeh/posting-a-wtform-via-ajax-with-flask-b977782edeee

但是,我需要用从AJAX接收到的数据更新现有的Jinja2模板。我最后通过对render_template函数调用jsonify来完成这一任务,如下面所讨论的:Render Jinja after jQuery AJAX request to Flask

但是,我用来折叠/展开模板表部分的按钮无法工作,因为事实证明,事件只适用于页面加载时存在的内容。因此,我不得不委托事件,以便允许事后添加的项触发jquery侦听的事件,如下面所讨论的:https://aiocollective.com/blog/click-doesn-t-work-after-ajax-load-jquery/

我希望这些链接对其他人有帮助!

票数 0
EN

Stack Overflow用户

发布于 2019-07-09 08:05:06

侦听onbeforeunload事件。

代码语言:javascript
运行
AI代码解释
复制
window.addEventListener("beforeunload", function(event) {
  alert("How dare you leave this page?!");
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56956475

复制
相关文章
vb.net ExcelHelper类(三)
Public Sub InsertRows(rowIndex As Integer, count As Integer)
办公魔盒
2019/07/22
1K0
vb.net ExcelHelper类(一)
''' 暂时不提供操作Excel对象样式方法,样式可以在Excel模板中设置好
办公魔盒
2019/07/22
1.3K0
vb.net ExcelHelper类(二)
''' <param name="sheetIndex">工作表索引</param>
办公魔盒
2019/07/22
1.2K0
Lambda序列化支持debugger
代码仓库:https://gitee.com/VampireAchao/stream-query
阿超
2022/08/20
3230
Lambda序列化支持debugger
VB.NET 对ini配置文件操作类
.ini 文件是Initialization File的缩写,即初始化文件,是windows的系统配置文件所采用的存储格式,统管windows的各项配置,一般用户就用windows提供的各项图形化管理界面就可实现相同的配置了。但在某些情况,还是要直接编辑ini才方便,一般只有很熟悉windows才能去直接编辑。
办公魔盒
2019/07/22
1.5K0
VB.NET 对ini配置文件操作类
Dubbo 支持哪些序列化协议?
dubbo 支持哪些通信协议?支持哪些序列化协议?说一下 Hessian 的数据结构?PB 知道吗?为什么 PB 的效率是最高的?
李红
2019/05/29
1.6K0
C#序列化反序列化帮助类
//转载:http://hi.baidu.com/fxh19860822/blog/item/df35230b3ded441495ca6bd5.html 在C#中常见的序列化的方法主要也有三个:BinaryFormatter、SoapFormatter、XML序列化 /// <summary> /// 提供序列化和反序列化对象的相关静态方法。 /// </summary> public class SerializerHelper { ///
跟着阿笨一起玩NET
2018/09/18
1.6K0
Dubbo支持的通信、序列化协议
默认就是走dubbo协议的,单一长连接,NIO异步通信,基于hessian作为序列化协议。
JavaEdge
2022/11/30
4480
Dubbo支持的通信、序列化协议
python 类支持with调用
为了让一个对象兼容 with 语句,你需要实现 __enter__() 和 __exit__() 方法。 例如,考虑如下的一个类,它能为我们创建一个网络连接:
用户5760343
2019/12/13
9620
dubbo 支持哪些通信协议?支持哪些序列化协议?
序列化,就是把数据结构或者是一些对象,转换为二进制串的过程,而反序列化是将在序列化过程中所生成的二进制串转换成数据结构或者对象的过程。
IT技术小咖
2019/06/26
1.5K0
dubbo 支持哪些通信协议?支持哪些序列化协议?
模型类序列化器ModelSerializer
如果我们想要使用序列化器对应的是Django的模型类,DRF为我们提供了ModelSerializer模型类序列化器来帮助我们快速创建一个Serializer类。
小闫同学啊
2019/07/18
6280
java序列化反序列化工具类SerializeUtils.java
Redis不支持直接将Java对象存储到数据库中,所以需要将java对象进行序列化得到字节数组,然后将字节数组存入到redis中,需要数据的时候就从redis数据库中取出字节数组,再经过反序列化将自己数组转换成对象使用(jdk序列化性能比谷歌公司的Protobuf序列化性能要差一些,而且序列化后的字节长度要也会长一些,所以推荐使用Protobuf.
IT工作者
2022/05/06
6580
JSON类库Jackson优雅序列化Java枚举类
在Java开发中我们为了避免过多的魔法值,使用枚举类来封装一些静态的状态代码。但是在将这些枚举的意思正确而全面的返回给前端却并不是那么顺利,我们通常会使用Jackson类库序列化对象为JSON,今天就来讲一个关于使用Jackson序列化枚举的通用性技巧。
码农小胖哥
2020/06/28
5.4K0
[PHP]实体类基类和序列化__sleep问题
1.构造函数传参 2.__get和__set实现,当调用不存在的属性的时候,可以取值和赋值到data属性数组 3.__sleep实现,当序列化对象的时候,只序列化data属性数组和类内初始化定义的字段 4.__isset实现,可以判断属性是否存在,通过判断data属性数组 5.toArray方法实现,返回data属性数组 6.记录了构造初始化后,动态添加的属性字段
唯一Chat
2019/09/10
5150
StreamingPro 支持类SQL DSL
受spark sql在喜马拉雅的使用之xql 这篇文章影响,我发现类似下面这种语法是极好的:
用户2936994
2018/08/27
5030
VB.NET 对SQLite轻型数据库操作的SQLiteHelp类
SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它是D.RichardHipp建立的公有领域项目。它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起MysqlPostgreSQL这两款开源的世界著名数据库管理系统来讲,它的处理速度比他们都快。
办公魔盒
2019/07/22
3.4K0
VB.NET 对SQLite轻型数据库操作的SQLiteHelp类
制作最清晰缩略图的完整类(VB.NET版)
Public Class ClassUpPic    Private vPicFile As Sys
Java架构师必看
2021/03/22
4850
浅谈VB.NET[通俗易懂]
前一段时间好多同学都分享了如何高效看视频的学习方法,第一条就是在看视频之前,对视频中所讲的内容有一个大致的了解。看VB.NET 视频,首先我们就要了解一下VB.NET是什么,它是用来干什么的。
全栈程序员站长
2022/08/09
2K0
浅谈VB.NET[通俗易懂]
Kafka 中使用 Avro 序列化框架(一):使用传统的 avro API 自定义序列化类和反序列化类
关于 avro 的 maven 工程的搭建以及 avro 的入门知识,可以参考: Apache Avro 入门
CoderJed
2018/09/13
2.6K0
Kafka 中使用 Avro 序列化框架(一):使用传统的 avro API 自定义序列化类和反序列化类
Dubbo 支持的几个主流序列化框架评测
今天要聊的技术是序列化,这不是我第一次写序列化相关的文章了,今天动笔之前,我还特地去博客翻了下我博客早期的一篇序列化文章(如下图),竟然都过去 4 年了。
kirito-moe
2021/09/08
1.8K0
Dubbo 支持的几个主流序列化框架评测

相似问题

vb.net序列化类

23

通过序列化支持的Singleton类

11

VB.Net创建要序列化的类

10

将VB.Net Xml反序列化为类

31

VB.net -序列化具有事件的类

22
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文