重写alert方法完成类似gmail的友好提示

来源:互联网 发布:sql查询oracle数据库 编辑:程序博客网 时间:2024/05/23 13:27

 

当在网页中调用aelrt()方法的时候,系统会自动显示友好的提示方式 。

下面是css样式控制代码:

/*------------------------------------------------------------------------------------*/
/*
以下css完成圆弧矩形
*/

.rno 
{
    BACKGROUND
: #fad163  ; COLOR: #000
}

.rno .rnd1 
{
    BACKGROUND
: #fad163  ; COLOR: #000
}

.rno .rnd2 
{
    BACKGROUND
: #fad163  ; COLOR: #000
}

B.rnd 
{
    DISPLAY
: block; FONT-SIZE: 1px; BACKGROUND: #fff
}

B.rnd B 
{
    DISPLAY
: block; OVERFLOW: hidden; HEIGHT: 1px
}

B.rnd1 
{
    MARGIN
: 0px 2px
}

B.rnd2 
{
    MARGIN
: 0px 1px
}

.nm 
{
    PADDING-RIGHT
: 15px; PADDING-LEFT: 15px; PADDING-BOTTOM: 1px; PADDING-TOP: 0px
}

/*------------------------------------------------------------------------------------*/

下面是javascript代码:

/**
重写window.alert(),想要调用原来的alert()方法可以用window._alert()
在要显示提示信息的地方加入:<a id="_alert" />然后就可以直接调用alert(message)
如果没有在页面中加入<a id="_alert" />,则alert()方法仍然会采用弹出对话框的形式显示信息
*
*/

if(typeof(window._alert)=="undefined"){
    
//保存系统的alert()
    window._alert = window.alert;
    window.alert 
= function(){
        
var obj = getObject('_alert');
        
if(obj==null){
            
if(arguments.length==0){
                _alert();
            }
else{
                _alert(arguments[
0].toString());
            }

        }
else{
            obj.innerHTML
="";
            
if(arguments.length>0){
                
var content = "<font style="text-align:center; color:#000000; font-size:14px; font-weight:bold;">"
                
+arguments[0]
                
+"  <a style="font-size:12px; cursor:hand;" onClick="this.parentElement.parentElement.parentElement.parentElement.style.display='none'">隐藏</a></font>";
                obj.innerHTML 
= getDiv(content);
            }

        }

        
function getDiv(content){
            
var div = "";
            div
+="<DIV style='PADDING-BOTTOM: 4px' align=center>";
            div
+="<TABLE class=rno cellSpacing=0 cellPadding=0>";
            div
+="<TBODY>";
            div
+="<TR>";
            div
+="<TD>";
            div
+="<B class=rnd>";
            div
+="<B class=rnd1></B>";
            div
+="<B class=rnd2></B>";
            div
+="</B>";
            div
+="</TD>";
            div
+="<TR>";
            div
+="<TD class=nm>"+content+"</TD>";
            div
+="<TR>";
            div
+="<TD>";
            div
+="<B class=rnd>";
            div
+="<B class=rnd2></B>";
            div
+="<B class=rnd1></B>";
            div
+="</B>";
            div
+="</TD>";
            div
+="</TR>";
            div
+="</TBODY>";
            div
+="</TABLE>";
            div
+="</DIV>";
            
return div;
        }

    }
;
}