jq或者js如何关闭已经打开的alert对话框

jq或者js如何关闭已经打开的alert对话框

我已经通过一个回调函数打开了一个alert,现在想让他显示几秒后自动关闭,请问jq如何做到,js也行,函数劫持的话,针对的是当前页面所有的alert,我目前只需要控制其中一个alert,跪求前端大神解答

ps:不是问题重点,我怕有人问我为啥这么做……
另外,我这个是用于H5的 web Notification的,通过Notification的点击回调打开已经缩小的页面,不知道怎么写,只好用alert来让页面重新最大化

var msg = 'test';
var n = new Notification("来自用户xxxx的新消息", {  
    icon: 'pic.png',  
    body: '消息内容:'+msg  
});  
n.onclick = function() {
    alert(1234);
    //想通过劫持函数来重新定义alert函数……但是好像是全局的……
    var ALERT_ON = true; 
    var _alert = window.alert;
    window.alert = function(msg) {
        if (ALERT_ON) {
            _alert(msg);
        }
    }
    //location.reload();
    n.close();
};
阅读 16.9k
3 个回答

alert弹出的窗口,好像没有办法自动关闭。
可以自己写一个alert弹窗。


我重新编辑一下 up主想要的效果。
点击Notification通知放大或显示当前页面。

直接再Notification的onclick里加这行代码就可以了。

window.focus();

alert会中断JS的执行,所以这需求没法实现。

因为alert是没法关闭,只能禁用,所以建议自己手写个弹出框。
自己用div写个遮罩的弹出模态框,然后setTimeout定时关闭。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏