重写alert,不显示IP地址及端口号

这里是引用

方法一(如果是弹出层在弹出alert,会被遮盖部分)

function alert() {
     var myAlertBigBoxIsTrue = document.getElementById('myMLBAlertBigBox');
      console.log(myAlertBigBoxIsTrue);
      if (myAlertBigBoxIsTrue === null) {

        // 創建一個遮罩層22222222222222222
        var bigbox = document.createElement("div");
        bigbox.id = "myMLBAlertBigBox";
        //创建一个大盒子
        var box = document.createElement("div");
        var myspan = document.createElement('span');
        //创建一个关闭按钮
        var button = document.createElement("button");

        bigbox.appendChild(box);
        // 設置遮罩層的樣式
        var bigboxName = {
          "width": "100%",
          "height": "100vh",
          "background-color": "rgba(0,0,0,0.4)",
          "position": "fixed",
          "top": "0",
          "left": "0",
          "z-index": "1000",
          "text-align": "center"
        }
        //给元素添加元素
        for (var k in bigboxName) {
          bigbox.style[k] = bigboxName[k];
        }
        //定义一个对象保存样式
        var boxName = {
          width: "500px",
          height: "180px",
          backgroundColor: "white",
          border: "1px solid rgb(226,222,222)",
          position: "absolute",
          "box-shadow": "5px 5px 10px 2px rgba(0,0,0,0.4)",
          top: "20%",
          "border-radius": "5px",
          left: "50%",
          margin: "-90px 0 0 -250px",
          zIndex: "1001",
          textAlign: "center",
          lineHeight: "180px"
        }
        //给元素添加元素
        for (var k in boxName) {
          box.style[k] = boxName[k];
        }
        //把创建的元素添加到body中
        document.body.appendChild(bigbox);
        //把alert传入的内容添加到box中
        if (arguments[0]) {
          // box.innerHTML = arguments[0];
          myspan.innerHTML = arguments[0];
        }
        // 定義span樣式
        var spanName = {
          "text-align": "left",
          "line-height": "30px",
          "border-radius": "5px",
          "outline": "none",
          "word-break": "break-all",
          "position": "absolute",
          "overflow-y": "auto",
          "overflow": "auto",
          "height": "112px",
          "top": "20px",
          "right": "25px",
          "left": "25px",

        }
        for (var j in spanName) {
          myspan.style[j] = spanName[j];
        }

        // bigbox.appendChild(box);
        box.appendChild(myspan);
        button.innerHTML = "关闭";
        //定义按钮样式
        var btnName = {
          border: "1px solid #ccc",
          backgroundColor: "#fff",
          width: "70px",
          height: "30px",
          textAlign: "center",
          lineHeight: "30px",
          "border-radius": "5px",
          outline: "none",
          position: "absolute",
          bottom: "10px",
          right: "20px",

        }
        for (var j in btnName) {
          button.style[j] = btnName[j];
        }
        //把按钮添加到box中
        box.appendChild(button);
        //给按钮添加单击事件
        button.addEventListener("click", function () {
          bigbox.style.display = "none";
          var idObject = document.getElementById('myMLBAlertBigBox');
          if (idObject != null)
            idObject.parentNode.removeChild(idObject);
        })
      } else {
        return;
      }
    }

方法二(试了不起作用)

window.alert = function(name){
    var iframe = document.createElement("IFRAME");
    iframe.style.display="none";
    iframe.setAttribute("src", 'data:text/plain,');
    document.documentElement.appendChild(iframe);
    window.frames[0].window.alert(name);
    iframe.parentNode.removeChild(iframe);
}
//重写confirm 不显示ip地址  
var wConfirm = window.confirm;  
window.confirm = function (message) {  
    try {  
        var iframe = document.createElement("IFRAME");  
        iframe.style.display = "none";  
        iframe.setAttribute("src", 'data:text/plain,');  
        document.documentElement.appendChild(iframe);  
        var alertFrame = window.frames[0];  
        var iwindow = alertFrame.window;  
        if (iwindow == undefined) {  
            iwindow = alertFrame.contentWindow;  
        }  
        var result = iwindow.confirm(message);  
        iframe.parentNode.removeChild(iframe);  
        return result;  
    }  
    catch (exc) {  
        return wConfirm(message);  
    }  
}

方法三(可行)

    window.alert = function(msg, callback) {
	var div = document.createElement("div");
	div.innerHTML = "<style type=\"text/css\">"
			+ ".nbaMask { position: fixed; z-index: 1000; top: 0; right: 0; left: 0; bottom: 0; background: rgba(0, 0, 0, 0.5); }                                                                                                                                                                       "
			+ ".nbaMaskTransparent { position: fixed; z-index: 1000; top: 0; right: 0; left: 0; bottom: 0; }                                                                                                                                                                                            "
			+ ".nbaDialog { position: fixed; z-index: 5000; width: 80%; max-width: 300px; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); background-color: #fff; text-align: center; border-radius: 8px; overflow: hidden; opacity: 1; color: white; }"
			+ ".nbaDialog .nbaDialogHd { padding: .2rem .27rem .08rem .27rem; }                                                                                                                                                                                                                         "
			+ ".nbaDialog .nbaDialogHd .nbaDialogTitle { font-size: 17px; font-weight: 400; }                                                                                                                                                                                                           "
			+ ".nbaDialog .nbaDialogBd { padding: 0 .27rem; font-size: 15px; line-height: 4.3; word-wrap: break-word; word-break: break-all; color: #000000; }                                                                                                                                          "
			+ ".nbaDialog .nbaDialogFt { position: relative; line-height: 48px; font-size: 17px; display: -webkit-box; display: -webkit-flex; display: flex; }                                                                                                                                          "
			+ ".nbaDialog .nbaDialogFt:after { content: \" \"; position: absolute; left: 0; top: 0; right: 0; height: 1px; border-top: 1px solid #e6e6e6; color: #e6e6e6; -webkit-transform-origin: 0 0; transform-origin: 0 0; -webkit-transform: scaleY(0.5); transform: scaleY(0.5); }               "
			+ ".nbaDialog .nbaDialogBtn { display: block; -webkit-box-flex: 1; -webkit-flex: 1; flex: 1; color: #09BB07; text-decoration: none; -webkit-tap-highlight-color: transparent; position: relative; margin-bottom: 0; }                                                                       "
			+ ".nbaDialog .nbaDialogBtn:after { content: \" \"; position: absolute; left: 0; top: 0; width: 1px; bottom: 0; border-left: 1px solid #e6e6e6; color: #e6e6e6; -webkit-transform-origin: 0 0; transform-origin: 0 0; -webkit-transform: scaleX(0.5); transform: scaleX(0.5); }             "
			+ ".nbaDialog a { text-decoration: none; -webkit-tap-highlight-color: transparent; }"
			+ "</style>"
			+ "<div id=\"dialogs2\" style=\"display: none\">"
			+ "<div class=\"nbaMask\"></div>"
			+ "<div class=\"nbaDialog\">"
			+ "	<div class=\"nbaDialogHd\">"
			+ "		<strong class=\"nbaDialogTitle\"></strong>"
			+ "	</div>"
			+ "	<div class=\"nbaDialogBd\" id=\"dialog_msg2\">弹窗内容,告知当前状态、信息和解决方法,描述文字尽量控制在三行内</div>"
			+ "	<div class=\"nbaDialogHd\">"
			+ "		<strong class=\"nbaDialogTitle\"></strong>"
			+ "	</div>"
			+ "	<div class=\"nbaDialogFt\">"
			+ "		<a href=\"javascript:;\" class=\"nbaDialogBtn nbaDialogBtnPrimary\" id=\"dialog_ok2\">确定</a>"
			+ "	</div></div></div>";
	document.body.appendChild(div);
 
	var dialogs2 = document.getElementById("dialogs2");
	dialogs2.style.display = 'block';
 
	var dialog_msg2 = document.getElementById("dialog_msg2");
	dialog_msg2.innerHTML = msg;
 
	// var dialog_cancel = document.getElementById("dialog_cancel");
	// dialog_cancel.onclick = function() {
	// dialogs2.style.display = 'none';
	// };
	var dialog_ok2 = document.getElementById("dialog_ok2");
	dialog_ok2.onclick = function() {
		dialogs2.style.display = 'none';
		callback();
	};

};

调用的时候需要注意,写成以下方式才能在点击确定后执行刷新操作

	alert("删除成功!",function(index){
		location.reload();
	});

方法四(最简便)

否则将自动关闭弹框执行后续操作

window.alert = function(name, callback){
	layer.alert(name,callback);
};

调用

alert("删除成功!",function(index){
	location.reload();
});

但是需要注意,适用此方法需要引入layui.js、layui.cs

  <script src="${_b}/style/ajinfo/layui/layui.js"></script>
  <link rel="stylesheet" type="text/css" href="${_b}/style/ajinfo/layui/css/layui.css"/>
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值