当前位置:首页 > JavaScript

js实现confirm

2026-03-01 03:54:34JavaScript

使用 window.confirm 方法

window.confirm 是 JavaScript 内置的对话框方法,用于显示一个带有确认和取消按钮的弹窗。用户点击确认返回 true,点击取消返回 false

const result = confirm('确定要执行此操作吗?');
if (result) {
    console.log('用户点击了确认');
} else {
    console.log('用户点击了取消');
}

自定义模态框实现 Confirm

如果需要更灵活的样式或功能,可以通过 HTML 和 CSS 自定义一个模态框来模拟 confirm 的行为。

js实现confirm

<div id="customConfirm" style="display: none; position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); background: white; padding: 20px; border: 1px solid #ccc; z-index: 1000;">
    <p id="confirmMessage">确定要执行此操作吗?</p>
    <button id="confirmOk">确定</button>
    <button id="confirmCancel">取消</button>
</div>
function customConfirm(message, callback) {
    const confirmBox = document.getElementById('customConfirm');
    const confirmMessage = document.getElementById('confirmMessage');
    const confirmOk = document.getElementById('confirmOk');
    const confirmCancel = document.getElementById('confirmCancel');

    confirmMessage.textContent = message;
    confirmBox.style.display = 'block';

    confirmOk.onclick = function() {
        confirmBox.style.display = 'none';
        callback(true);
    };

    confirmCancel.onclick = function() {
        confirmBox.style.display = 'none';
        callback(false);
    };
}

// 使用示例
customConfirm('确定要删除吗?', function(result) {
    if (result) {
        console.log('用户点击了确认');
    } else {
        console.log('用户点击了取消');
    }
});

使用 Promise 封装 Confirm

结合 Promise 可以更方便地处理异步确认操作。

js实现confirm

function promiseConfirm(message) {
    return new Promise((resolve) => {
        const result = confirm(message);
        resolve(result);
    });
}

// 使用示例
promiseConfirm('确定要继续吗?').then((confirmed) => {
    if (confirmed) {
        console.log('用户点击了确认');
    } else {
        console.log('用户点击了取消');
    }
});

使用第三方库

如果项目中使用 UI 框架(如 Bootstrap、Element UI 等),可以直接调用其提供的确认对话框组件。

以 Bootstrap 为例:

// 需要引入 Bootstrap 和 jQuery
$('#myButton').click(function() {
    const result = confirm('确定要提交吗?');
    if (result) {
        console.log('用户点击了确认');
    }
});

注意事项

  • window.confirm 是同步方法,会阻塞代码执行直到用户操作。
  • 自定义模态框需要处理遮罩层和焦点管理,确保用户体验一致。
  • 移动端可能需要适配样式,确保弹窗在小屏幕上正常显示。

标签: jsconfirm
分享给朋友:

相关文章

js实现图片放大缩小

js实现图片放大缩小

实现图片放大缩小的基础方法 使用CSS的transform: scale()属性可以快速实现图片的放大缩小效果。通过JavaScript动态修改该属性值: const img = document.…

js实现pdf在线预览

js实现pdf在线预览

使用PDF.js实现PDF在线预览 PDF.js是由Mozilla开发的一个开源JavaScript库,可以在网页中直接渲染PDF文件。以下是实现PDF在线预览的步骤: 引入PDF.js库 在HT…

js节流实现

js节流实现

节流的概念 节流(Throttle)是一种限制函数执行频率的技术,确保函数在一定时间间隔内只执行一次。常用于滚动事件、窗口调整等高频触发的场景。 基础实现方法 使用时间戳判断是否执行函数:…

js实现代码雨

js实现代码雨

实现代码雨效果 使用HTML5 Canvas和JavaScript可以轻松实现经典的代码雨效果。以下是完整的实现代码和说明: HTML结构 <!DOCTYPE html> <…

js实现菜单

js实现菜单

实现基本HTML结构 使用HTML创建菜单的基本框架,通常包含<ul>和<li>元素。示例结构如下: <ul id="menu"> <li><…

js实现 拖动

js实现 拖动

实现拖动的步骤 HTML 结构 创建一个可拖动的元素和一个放置区域: <div id="draggable" draggable="true">拖动我</div> <d…