自定义alert

参考:https://www.cnblogs.com/st-leslie/articles/5279864.html

把window.alert=function(){}指向新的方法,即相当于重写

window.alert = function(str)
{
    var shield = document.createElement("DIV");
    shield.id = "shield";
    shield.style.position = "fixed";
    shield.style.left = "0px";
    shield.style.top = "0px";
    shield.style.width = "100%";
    shield.style.height = document.body.scrollHeight+"px";
    //弹出对话框时的背景颜色
    shield.style.background = "#fff";
    shield.style.textAlign = "center";
    shield.style.zIndex = "299";
    //背景透明 IE有效
    //shield.style.filter = "alpha(opacity=0)";
    var alertFram = document.createElement("DIV");
    alertFram.id="alertFram";
    alertFram.style.position = "absolute";
    alertFram.style.left = "50%";
    alertFram.style.top = "50%";
    // alertFram.style.marginLeft = "-50%";
    // alertFram.style.marginTop = "-50%";
    alertFram.style.transform="translate(-50%,-50%)"
    alertFram.style.width = "80%";
    alertFram.style.background = "#ff0000";
    alertFram.style.textAlign = "center";
    alertFram.style.zIndex = "300";
    strHtml = "<ul style="list-style:none;margin:0px;padding:0px;100%">
";
    strHtml += " <li style="background:#DD828D;text-align:left;padding-left:20px;font-size:14px;font-weight:bold;height:25px;line-height:25px;border:1px solid #F9CADE;">[自定义提示]</li>
";
    strHtml += " <li style="background:#fff;text-align:center;font-size:12px;height:120px;line-height:120px;border-left:1px solid #F9CADE;border-right:1px solid #F9CADE;">"+str+"</li>
";
    strHtml += " <li style="background:#FDEEF4;text-align:center;font-weight:bold;height:25px;line-height:25px; border:1px solid #F9CADE;"><input type="button" value="确 定" onclick="doOk()" /></li>
";
    strHtml += "</ul>
";
    alertFram.innerHTML = strHtml;
    document.body.appendChild(alertFram);
    document.body.appendChild(shield);
    //var ad = setInterval("doAlpha()",5);
    this.doOk = function(){
        alertFram.style.display = "none";
        shield.style.display = "none";
    }
    alertFram.focus();
    document.body.onselectstart = function(){return false;};
}
原文地址:https://www.cnblogs.com/lmxxlm-123/p/9015150.html