JavaScript confirm() 语法
confirm() 是 JavaScript 的一个全局函数(即 window 对象的方法),它用于弹出一个带有 “提示文字” 和 “确认按钮” 的对话框。
语法:
confirm(message)说明:
confirm() 方法接收单个参数。
message(可选):提示文本。
confirm() 是 window 对象的方法,在使用时是可以省略 window 前缀。下面 2 种写法是等价的。
// 写法1
confirm("回到首页?");
// 写法2
window.confirm("回到首页?");注意:
- confirm() 是 window 对象的方法,它只能在浏览器环境中使用,而不能在 Node.js 环境中使用。这是因为 Node.js 是没有 window 对象的。
- confirm() 执行之后,会阻塞后续程序的执行,除非我们手动关闭它。
JavaScript confirm() 摘要
| 属于 | JavaScript window 对象 |
|---|---|
| 使用频率 | 低 |
| 官方文档 | 查看 |
| MDN | 查看 |
JavaScript confirm() 示例
接下来,我们通过一个简单的例子来讲解一下 JavaScript confirm() 方法是如何使用的。
示例:confirm() 基本用法
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<button id="btn" type="button">回到首页</button>
<script>
const oBtn = document.getElementById("btn");
oBtn.addEventListener("click", function() {
if (confirm("确定要跳转到绿叶网首页吗?")) {
window.location.href = "https://www.lvyenet.com";
} else {
console.log("你取消了跳转");
}
});
</script>
</body>
</html>默认情况下,页面效果如下图所示。单击【欢迎】按钮之后,会弹出一个对话框,如下图所示。


分析:
confirm() 会返回一个布尔值。对于这个例子来说,弹出对话框之后,如果我们单击【确定】按钮,则 confirm() 会返回 true,此时会执行 window.location.href = "https://www.lvyenet.com";。
如果单击【取消】按钮,则 confirm() 会返回 false,此时会执行 console.log("你取消了跳转");。
alert()、confirm() 与 prompt() 的区别
alert()、confirm() 和 prompt() 这 3 个都可以用于定义一个对话框,它们之间的区别如下。
alert():仅提示文本。confirm():带提示文本和确认按钮,返回一个布尔值。prompt():带提示文本和输入框,返回一个字符串。
这 3 种对话框在实际开发中经常用到,不过大多数情况下不会采用浏览器默认的对话框,因为这些默认对话框外观真的是太丑了。为了更好的用户体验,我们都倾向于使用 div 元素来模拟出来,并且结合 CSS3、JavaScript 等来实现酷炫的动画效果。
下面就是使用 div 元素模拟出来的对话框,简约扁平,并且还带有各种 3D 动画,用户体验非常好。不过这种效果实现起来比较复杂,小伙伴们可以自行搜一下 “CSS 模拟对话框”。



