js重写alert弹框,带样式

先看图:

具体代码:

window.alert = function (txt, time) {
            if (document.getElementById("alertFram")) {
                return;
            }
            var alertDiv = document.createElement("DIV");
            alertDiv.id = "alertFram";
            alertDiv.style.position = "absolute";
            alertDiv.style.left = "50%";
            alertDiv.style.top = "40%";
            alertDiv.style.marginLeft = "-225px";
            alertDiv.style.marginTop = "-75px";
            alertDiv.style.width = "450px";
            alertDiv.style.height = "340px";
            alertDiv.style.background = "#ccc";
            alertDiv.style.textAlign = "center";
            alertDiv.style.zIndex = "10000";
            alertDiv.innerHTML = '<div style="width: 100%;height: 100%;background: #fff;border: 1px solid #f1f1f1;overflow: hidden;"><div style="font-size: 16px;text-align: center;line-height: 42px;color: #111;background: #fff;position: absolute;left: 0;top: 0;z-index: 999;width: 100%;text-align: center;border-bottom:1px solid #F0F0F0">详情</div><div style="text-align: left;margin-top: 42px;font-size: 14px;padding: 10px;color: #555;height: 82%;overflow: auto;word-wrap: break-word;">'+ txt +'</div><div style="position: absolute;right: 10px;top: 3px;font-size: 24px;cursor: pointer;z-index: 1000;" onclick="doOk()">×</div></div>';
            document.body.appendChild(alertDiv);
            var c = 0;
            this.timer = function () {
                if (c++ >= time) {
                    clearInterval(ad);
                    document.body.removeChild(alertDiv);
                }
            }
            var ad = setInterval("timer()", 1000);
            this.doOk = function () {
                document.body.removeChild(alertDiv);
            }
            alertDiv.focus();
            document.body.onselectstart = function () {
                return false;
            };
        }

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
以下是一些美化alert弹窗的CSS代码: ``` /* Alert弹窗样式 */ .alert { padding: 20px; background-color: #f44336; color: white; border-radius: 5px; } /* 成功 Alert弹窗样式 */ .alert.success {background-color: #4CAF50;} /* 信息 Alert弹窗样式 */ .alert.info {background-color: #2196F3;} /* 警告 Alert弹窗样式 */ .alert.warning {background-color: #ff9800;} /* 关闭按钮样式 */ .closebtn { margin-left: 15px; color: white; font-weight: bold; float: right; font-size: 22px; line-height: 20px; cursor: pointer; transition: 0.3s; } /* 鼠标悬停关闭按钮样式 */ .closebtn:hover { color: black; } ``` 以下是一个基于JavaScriptalert弹窗美化示例: ``` function showAlert(message, type) { // 创建一个alert元素 var alertElement = document.createElement("div"); // 添加样式alertElement.classList.add("alert"); if (type == "success") { alertElement.classList.add("success"); } else if (type == "info") { alertElement.classList.add("info"); } else if (type == "warning") { alertElement.classList.add("warning"); } // 添加关闭按钮 var closeBtn = document.createElement("span"); closeBtn.classList.add("closebtn"); closeBtn.innerHTML = "×"; alertElement.appendChild(closeBtn); // 添加消息 var messageElement = document.createElement("p"); messageElement.innerHTML = message; alertElement.appendChild(messageElement); // 将alert元素添加到body中 document.body.appendChild(alertElement); // 点击关闭按钮时,删除alert元素 closeBtn.onclick = function() { alertElement.remove(); } // 5秒后自动删除alert元素 setTimeout(function() { alertElement.remove(); }, 5000); } ``` 这个函数接收两个参数:消息内容和消息类型(可选)。根据消息类型不同,alert弹窗的样式会有所不同。调用这个函数时,会创建一个alert元素,并添加到页面中。5秒后,这个alert元素会自动删除。用户也可以手动点击关闭按钮来删除这个alert元素。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

衹染青春

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值