首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在离开或刷新页面时弹出自定义模式?

如何在离开或刷新页面时弹出自定义模式?
EN

Stack Overflow用户
提问于 2021-06-29 22:29:13
回答 2查看 1.3K关注 0票数 1

我一直在跟踪这个博客,到目前为止,当我单击另一个路由/链接时,我的自定义模式起作用了。

这种实现的唯一问题是,当我刷新时,自定义模式不能工作,而是弹出内置的确认警报。

我这里有我的定制模式。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
const CustomConfirm = ({ content, title, isBlocked }) => {
  
  // some codes here (from the blog)
  
  return (
    <>
      <Prompt when message={handleBlockedRoute} />
      {isModalOpen && (
        <ConfirmationModal
          showConfirmationModal={true}
          setShowConfirmationModal={(value) => console.log(value)}
          message={title}
          handleOk={handleConfirmNavigationClick}
          handleCancel={closeModal}
        />
      )}
    </>
  );
};

export default CustomConfirm;

在刷新之前,我们可以弹出一个自定义模式吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-06-29 22:47:18

谢天谢地,如果用户刷新页面(在Ctrl+r中刷新)或尝试关闭选项卡(如离开页面),我们就无法拦截和阻止这些事件的发生。

想想广告会有多烦人和可怕(就像它们一样!)如果浏览器允许的话。

不可能在卸载之前劫持onbeforeunload事件;如何覆盖OnBeforeUnload对话框并将其替换为自己的对话框?

https://developer.mozilla.org/en-US/docs/Web/API/WindowEventHandlers/onbeforeunload

票数 3
EN

Stack Overflow用户

发布于 2021-06-29 22:34:41

在componentWillUnmount方法中,使isModalOpen = true。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
useEffect(() => {

    return () => // set isModalOpen to true;

}, []);
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68189476

复制
相关文章
js页面刷新或关闭时弹框消失_js刷新页面如何保留页面内容
  用法:onbeforeunload 事件在即将离开当前页面(刷新或关闭)时触发。该事件可用于弹出对话框,提示用户是继续浏览页面还是离开当前页面。对话框默认的提示信息根据不同的浏览器有所不同,标准的信息类似 “确定要离开此页吗?”。该信息不能删除。但你可以自定义一些消息提示与标准信息一起显示在对话框。注意: 在 Firefox 浏览器中,只显示默认提醒信息(不显示自定义信息)。
全栈程序员站长
2022/11/17
11.9K0
离开和进入html页面时改变title
离开和进入页面时改变网页标题,最近也才刚刚开始js学习,下面这段代码简单就是说访客如果离开你的网站之后,站点标题会发生变化。原理是使用了HTML5的Page Visibility API 目前页面可见性API有两个属性,一个事件:
qiangzai
2021/12/21
2.1K0
离开和进入html页面时改变title
用jquery刷新或重新加载页面
在网页开发过程中,经常会遇到需要重新加载或刷新页面,下面我来说一下如果通过jq来刷新或重新加载页面,来看代码。
OECOM
2020/07/01
7K0
uniapp监听页面离开返回上一级实现数据刷新
实现原理是基于uniapp的uni.on、uni.emit uni. onUnload() { uni.$emit('refresh'); }, 然后在上一级组件里面增加 onLoad(opts){ console.log('opts',opts) uni.$on('refresh',() => { this.getWorkOrderUnShelveMaterialList() }) }, onUnload(){ console.log('onUnload') u
李维亮
2023/05/07
7K0
react离开页面,自定义弹框拦截,路由拦截
前言: 项目有个需求是:跳转路由,在离开页面前,需要弹框询问用户是否确定离开。 用react-router的<Prompt>组件是可以的,但是,怎么使用antd组件(或者说自定义组件)呢? 请看下面
进击的小进进
2022/03/28
2.4K0
react离开页面,自定义弹框拦截,路由拦截
JS/JQuery页面刷新、局部刷新
//div的局部刷新 $(".dl").load(location.href+" .dl"); //全页面的刷新方法 window.location.reload()刷新当前页面. parent.location.reload()刷新父亲对象(用于框架) opener.location.reload()刷新父窗口对象(用于单开窗口) top.location.reload()刷新最顶端对象(用于多开窗口)
小语雀网
2022/05/06
5.8K0
jquery刷新当前页面、刷新父级页面
Jensen_97
2023/07/19
3820
如何在 Web 关闭页面时发送 Ajax 请求
有时候我们需要在用户离开页面的时候,做一些上报来记录用户行为。又或者是发送服务器ajax请求,通知服务器用户已经离开,比如直播间内的退房操作。
grain先森
2019/05/10
3.3K0
如何在 Web 关闭页面时发送 Ajax 请求
vue路由history模式下刷新页面404
vue的路由是由js来控制的,但是,当你刷新浏览器的时候,是向服务器发送请求的一个过程,当访问不到的时候必然会返回404。
神葳
2021/01/22
1.2K0
关于vue按回车时刷新页面问题-已解决
最近使用vue开发遇到了一个有趣的问题,页面文本框在点击回车时会刷新页面,而且只有第一次会触发刷新,问题代码如下:
星辰sea
2022/10/29
1K0
setInerval实现图片滚动离开页面后又返回页面时图片加速滚动问题解决
由于在加载了图片滚动的页面之后,又去到了其他页面,但是定时器没有停止,而页面又没有显示在用户面前,当返回页面的时候,就会把之前定时器中已经移动的图片动画一股脑移动,就会出现如题所述加速滚动的效果。
蓓蕾心晴
2020/03/19
1.2K0
js实现页面刷新
reload 方法,该方法强迫浏览器刷新当前页面。 语法:location.reload([bForceGet]) 参数: bForceGet, 可选参数, 默认为 false,从客户端缓存里取当前页。true, 则以 GET 方式,从服务端取最新的页面, 相当于客户端点击 F5("刷新")
爱喝水的木子
2022/01/12
20.6K0
visibilitychange – 指定标签页可见时,刷新页面数据
一通过监听浏览器页面可见性改变(visibilitychange)事件,来判断标签页是否可见
全栈程序员站长
2022/07/02
7010
JavaScript禁用页面刷新
JavaScript禁用页面刷新代码如下: //禁用F5刷新 document.onkeydown = function () { if (event.keyCode == 116) { event.keyCode = 0; event.cancelBubble = true; return false; } } //禁止右键弹出菜单 document.oncontextmenu = function () { return fals
磊哥
2018/05/08
4.9K0
vue强制刷新页面方法_vue页面回退不刷新
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/17
5K0
JS实现无限刷新网站页面(可自定义时间)
利用JavaScript达到无限刷新某些网站页面的目的,在arr里面添加所需要刷新的网站,默认时间单位为秒。
PHP开发工程师
2021/05/06
2.5K0
网页离开时改变标题“崩溃欺骗”
我们先创建一个 js 文件,我们用记事本就好了,然后改个文件名,不妨就叫crash-cheat.js吧,你们可以随意! 然后把文件放到 source 文件夹的 js 文件夹的 src 里面。(我用的 next 主题,放这里统一存放,其他主题随意)
Cell
2022/02/25
1.2K0
layui弹出层弹出另一个页面[通俗易懂]
这是layui弹出层的代码,其中,type属性表示弹出层的类型,type为1 ,content显示的是纯文本内容,type为2,content为跳转页面
全栈程序员站长
2022/07/01
2.6K0
JavaScript 页面可见性-监听用户离开页面-visibilitychange 事件
用户9857551
2023/10/17
1.4K0
vue 加载页面时触发时间_Vue 刷新页面时会触发事件吗「建议收藏」
使用localstorage做本地存储,然后我想在刷新页面或者离开页面的调用localstorage方法
全栈程序员站长
2022/09/27
1.7K0

相似问题

如何在关闭模式弹出box>时防止页面刷新

113

我想在离开页面前显示模式弹出窗口

21

使用jquery关闭模式弹出时刷新页面

22

模式弹出窗口不刷新父页面

12

AngularJS。在用户试图离开页面时显示自定义弹出

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

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

洞察 腾讯核心技术

剖析业界实践案例

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