html关闭当前页面前alert,javascript – 停止页面执行,像alert()函数
你不能。只有特殊的内置函数才能做到这一点。有一段时间,有一个
showModalDialog特殊内置,让你指定一个URI的内容,从而自定义它,但它从来没有得到广泛支持,现在已被弃用,即使由曾经支持它的浏览器。
相反,使您的当前警报函数使用div接受警报关闭时的回调(或返回在关闭时返回的确认),以允许您继续处理。
例如,如果你的代码用来使用alert和工作,像这样:
function foo() {
var x;
x = doSomething();
alert("Alert! Alert!");
doSomethingAfterTheAlertIsCleared(x);
doAnotherThingAfterward();
}
…您可以将其更改为:
function foo() {
var x;
x = doSomething();
fakeAlert("Alert! Alert!", function() {
doSomethingAfterTheAlertIsCleared(x);
doAnotherThingAfterward();
});
}
注意,现在所有跟在警报之后的代码都在一个函数中,它的引用传递给fakeAlert。 foo函数返回,同时假警报仍然显示,但最终用户关闭假警报,我们的回调被调用。注意,我们的回调代码可以访问我们正在处理的foo调用中的本地化,因为我们的回调是一个闭包(不要担心,如果这是一个相当新的和/或神秘的术语,closures are not complicated)。
当然,如果跟随警告的唯一的事情是单一的函数调用,不接受任何参数,我们可以直接传递该函数引用。例如:
function foo() {
doSomething();
alert("Alert! Alert!");
doSomethingAfterTheAlertIsCleared();
}
变为:
function foo() {
doSomething();
fakeAlert("Alert! Alert!", doSomethingAfterTheAlertIsCleared);
}
(注意,doSomethingAfterTheAlertIsCleared之后没有() – 我们指的是函数对象,不调用函数; fakeAlert会调用它。)
如果你不确定fakeAlert如何调用回调,它将在用户“关闭”警报div的事件处理程序内,你只需调用回调的参数,就像对任何其他引用功能。所以如果fakeAlert接收它作为回调,你通过调用callback();.
html关闭当前页面前alert,javascript – 停止页面执行,像alert()函数相关推荐
- 停止页面js加载函数(jquery)╮(‵▽′)╭秒杀业务场景
//停止页面js加载 function CloseSearch() { $(".CloseSearch").html(CloseSearch); var xmlh ...
- vue进入页面执行的钩子函数_深入理解Vue 的钩子函数
前言 说到Vue的钩子函数,可能很多人只停留在一些很简单常用的钩子( created , mounted ),而且对于里面的区别,什么时候该用什么钩子,并没有仔细的去研究过,且Vue的生命周期在面试中 ...
- javascript停止页面所有计时器
var highestTimeoutId = setTimeout(";");for (var i = 0 ; i < highestTimeoutId ; i++) {cl ...
- Javascript 给页面元素添加事件函数探讨
前言 HTML 本身就有事件触发的属性,比如 onclick, onmouseover ,..... 直接看Code(注: 本文都以onclick 来做例子) <!--Add by oscar9 ...
- vue进入页面执行的钩子函数_vue router的钩子函数总结
模块一:全局导航钩子函数 1.vue router.beforeEach(全局前置守卫) beforeEach的钩子函数,它是一个全局的before 钩子函数, (before each)意思是在 每 ...
- vue进入页面执行的钩子函数_解决VUE mounted 钩子函数执行时 img 未加载导致页面布局的问题...
项目需求:图片加载时,当鼠标滚动至当前图片进行加载并加上上滑特效,实现这个效果需要对文档文档滚动位置和图片的当前位置进行比较.但是mounted 钩子函数执行时img图片并未加载出来也就是占位为空,导 ...
- vue进入页面执行的钩子函数_vue的钩子函数
钩子函数 通过上述测试我们可以知道 在beforecreate阶段,对浏览器来说,整个渲染流程尚未开始或者说准备开始,对vue来说,实例尚未被初始化,data observer和 event/watc ...
- vue进入页面执行的钩子函数_vue中各选项及钩子函数执行顺序详解
{"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...
- 前台alert弹出页面,点击确定,关闭弹出框,整个页面进行刷新数据
前台alert弹出页面,点击确定,关闭弹出框,整个页面进行刷新数据location.reload(); $("#saveBatch").on("click", ...
最新文章
- 招聘 | ​浙江农林大学孙学鹏团队招聘事业编制科研人员
- iphone 使用ZBar 条码扫描
- 给Eclipse提速的7个技巧
- leedcode04:转换字符串的最少操作次数
- 两条边延长角会有什么变化_叶片锁是什么样的 叶片锁使用方法【详解】
- labelme进行mask图像标注
- WCF添加服务失败一则
- 利用SpringCloud搭建一个最简单的微服务框架
- 使用ping -a 无法得到 主机名字 hostnames 相关信息的原因
- python经典程序实例-Python3经典100例(①)
- Linux下如何识别TF卡
- 【Windows XP系统壁纸设置有哪些技巧】
- Bus Hound 使用指南
- android 电影放到哪个文件夹里,手机爱奇艺下载的电影保存到哪个文件夹里
- 开心一下,39 个奇葩代码注释,看完笑哭了
- 浅谈游戏《Cuphead茶杯头》
- 著名女程序员---女神程序媛
- QDialog添加最大化最小化按钮
- Linux内核数据包格式
- QT学习之QMainWindow详解