相关疑难解决方法(0)

检测用户何时离开网页的最佳方法?

检测用户是否离开网页的最佳方法是什么?

onunloadJavaScript事件,每次不工作(HTTP请求,而不是终止该浏览器所需要的时间需要更长的时间).

当前的浏览器可能会阻止创建一个.

javascript

186
推荐指数
7
解决办法
18万
查看次数

如何使用javascript停止浏览器后退按钮

我正在做php的在线测验应用程序.我想在回到考试时限制用户.我尝试过以下脚本,但它会停止我的计时器.我该怎么办请建议我.我已经包含了源代码.计时器存储在cdtimer.js中

<script type="text/javascript">
        window.history.forward();
        function noBack()
        {
            window.history.forward();
        }
</script>
<body onLoad="noBack();" onpageshow="if (event.persisted) noBack();" onUnload="">
Run Code Online (Sandbox Code Playgroud)

我有考试计时器,它从mysql数据库中获取考试时间,并相应地启动计时器,当我把代码禁用后退按钮时它停止.会是什么问题.

javascript browser

137
推荐指数
15
解决办法
45万
查看次数

beforeunload或onbeforeunload

我不知道我应该使用哪一个:beforeunload或者onbeforeunload它们似乎都做了非常相似的事情,但具有不同的浏览器兼容性.

一些背景:

我有一张表格.在页面加载时,我将表单序列化并将其保存在变量中.如果用户离开页面,我将表格序列化并比较两者,看看是否有任何变化.但是,如果提交表单,则不应触发该事件.

例1

我按预期工作了.我只是不明白两者之间的区别:

window.onbeforeunload = function(e) {
    if(strOnloadForm != strUnloadForm)
        return "You have unsaved changes.";
}
Run Code Online (Sandbox Code Playgroud)

使用此行停止在保存表单时触发(绑定到.submit())

window.onbeforeunload = null;
Run Code Online (Sandbox Code Playgroud)

例2

window.addEventListener("beforeunload", function( event ) {
    if(strOnloadForm != strUnloadForm)
        event.returnValue = "You have unsaved changes.";
});
Run Code Online (Sandbox Code Playgroud)

使用此行停止在保存表单时触发(绑定到.submit())

window.removeEventListener("beforeunload");
Run Code Online (Sandbox Code Playgroud)

文档说的是什么

我已经阅读了onbeforeunloadbeforeunload的文档.在Notesonbeforeunload部分下,它指出:

可以并且应该通过window.addEventListener()beforeunload事件处理此事件.那里有更多文档.1

这让我觉得我应该使用后者.但是,removeEventHandler的文档说明了这一点:

addEventListener()并且removeEventListener()不存在于旧版浏览器中.您可以通过在脚本的开头插入以下代码来解决此问题,允许使用addEventListener() …

javascript onbeforeunload javascript-events

21
推荐指数
1
解决办法
2万
查看次数

在反应 js 上显示浏览器后退按钮事件的警报

我必须在 React js 上的浏览​​器返回事件上显示警报。我曾尝试使用 ,addEventListener但我不确定将代码放置在 React 页面中的何处。我应该放置在任何生命周期钩子中还是在渲染中?我不知道。请帮帮我。

reactjs

9
推荐指数
3
解决办法
1万
查看次数