zoukankan      html  css  js  c++  java
  • 去除移动端alert/confirm的网址(url)

    移动端的alert、confirm都会显示来源的url,影响体验
    下面的代码将alert和confirm重写了一遍,可去除url
     参考了网上代码,完善了confirm不同状态跳转
     
    示例代码:

         <!DOCTYPE html>  
        <html>  
        <head>  
        <meta charset="utf-8">  
        <title>文档标题</title>  
        </head>  
           
        <body>  
        <script type="text/javascript">  
        /*remove url of alert/confirm*/    
        var wAlert = window.alert;    
        window.alert = 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;    
                }    
                iwindow.alert(message);    
                iframe.parentNode.removeChild(iframe);    
            }    
            catch (exc) {    
                return wAlert(message);    
            }    
        }    
        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);    
            }    
        }   
          
        var r=confirm("Press a button");  
        if (r==true)  
        {  
            document.write("You pressed OK!");  
        }  
        else  
        {  
            document.write("You pressed Cancel!");  
        }  
        </script>  
          
        </body>  
           
        </html>  
  • 相关阅读:
    RabbitMQ管理
    vc6.0
    SystemTap
    undefined reference to `__imp_socket'
    采集小板校时
    点播播放不出来
    抓包注意事项
    下载rfc
    CLion快捷键
    rtsp vlc请求实例
  • 原文地址:https://www.cnblogs.com/shuilangyizu/p/10175557.html
Copyright © 2011-2022 走看看