js写的一个好看的Alert

Code:
  1. <html>  
  2. <head>  
  3.    <title>  
  4.     </title>  
  5.    <style type="text/css">  
  6.        *{   
  7.            margin:0;padding:0;   
  8.        }   
  9.    .STYLE1 {color: #F9CADE}   
  10.          </style>  
  11. </head>  
  12. <body>  
  13.   
  14. <div class="cecmbody" id="cecmpolicy">  
  15.    <div class="leftClass">  
  16.       <input type="button" value="点击这里" onclick="sAlert('我是一个渐变的sAlert',this);" />  
  17.            </p>  
  18.     <p>测试</p><p>测试</p><p>测试</p><p>测试</p>  
  19.          
  20.     </div>  
  21.    <div class="rightClass">  
  22.    </div>    
  23. </div>  
  24.      <script type="text/javascript" language="javascript">  
  25.     function sAlert(txt){   
  26. var eSrc=(document.all)?window.event.srcElement:arguments[1];   
  27. var shield = document.createElement("DIV");   
  28. shield.id = "shield";   
  29. shield.style.position = "absolute";   
  30. shield.style.left = "0px";   
  31. shield.style.top = "0px";   
  32. shield.style.width = "100%";   
  33. shield.style.height = ((document.documentElement.clientHeight>document.documentElement.scrollHeight)?document.documentElement.clientHeight:document.documentElement.scrollHeight)+"px";   
  34. shield.style.background = "#333";   
  35. shield.style.textAlign = "center";   
  36. shield.style.zIndex = "10000";   
  37. shield.style.filter = "alpha(opacity=0)";   
  38. shield.style.opacity = 0;   
  39. var alertFram = document.createElement("DIV");   
  40. alertFram.id="alertFram";   
  41. alertFram.style.position = "absolute";   
  42. alertFram.style.left = "50%";   
  43. alertFram.style.top = "50%";   
  44. alertFram.style.marginLeft = "-225px" ;   
  45. alertFram.style.marginTop = -75+document.documentElement.scrollTop+"px";   
  46. alertFram.style.width = "450px";   
  47. alertFram.style.height = "150px";   
  48. alertFram.style.background = "#ccc";   
  49. alertFram.style.textAlign = "center";   
  50. alertFram.style.lineHeight = "150px";   
  51. alertFram.style.zIndex = "10001";   
  52. strHtml   = "<ul style=/"list-style:none;margin:0px;padding:0px;width:100%/">/n";   
  53. 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>/n";   
  54. 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;/">"+txt+"</li>/n";   
  55. 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;/"><input type=/"text/" value=/"确 定/"   /></li>/n";   
  56. strHtml += " <li style=/"background:#FDEEF4;text-align:center;font-weight:bold;height:25px;line-height:25px; border:1px solid #F9CADE;/"><input type=/"button/" value=/"确 定/" id=/"do_OK/" onclick=/"doOk()/" /></li>/n";   
  57. strHtml += "</ul>/n";   
  58. alertFram.innerHTML = strHtml;   
  59. document.body.appendChild(alertFram);   
  60. document.body.appendChild(shield);   
  61. this.setOpacity = function(obj,opacity){   
  62.    if(opacity>=1)opacityopacity=opacity/100;   
  63.    try{ obj.style.opacity=opacity; }catch(e){}   
  64.    try{    
  65.     if(obj.filters.length>0&&obj.filters("alpha")){   
  66.      obj.filters("alpha").opacity=opacity*100;   
  67.     }else{   
  68.      obj.style.filter="alpha(opacity=/""+(opacity*100)+"/")";   
  69.     }   
  70.    }catch(e){}   
  71. }   
  72. var c = 0;   
  73. this.doAlpha = function(){   
  74.    if (++c > 20){clearInterval(ad);return 0;}   
  75.    setOpacity(shield,c);   
  76. }   
  77. var ad = setInterval("doAlpha()",1);   
  78. this.doOk = function(){   
  79.    //alertFram.style.display = "none";   
  80.    //shield.style.display = "none";   
  81.    document.body.removeChild(alertFram);   
  82.    document.body.removeChild(shield);   
  83.    eSrc.focus();   
  84.    document.body.onselectstart = function(){return true;}   
  85.    document.body.oncontextmenu = function(){return true;}   
  86. }   
  87. document.getElementById("do_OK").focus();   
  88. eSrc.blur();   
  89. document.body.onselectstart = function(){return false;}   
  90. document.body.oncontextmenu = function(){return false;}   
  91. }   
  92.    </script>  
  93. </body>  
  94. </html>   

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
组件名称:ymPrompt消息提示组件 2.0 =============================================================================== 组件说明:在web开发中,对于浏览器默认的消息提示框(如alert,confirm等)外观无法控制,为了实现更好的界面效果,于是模拟系统的消息提示框实现了该组件。在外观上可以通过css进行完全的控制。 =============================================================================== 组件功能介绍: 1、调用方式简单,直接使用ymPrompt.alert()的方式调用,传入相应的参数即可。 2、兼容IE6.0+、FF1.5+、Opear9+(在Opear下显示有一个小缺陷),兼容HTML4/XHTML1.0页面渲染模式。 3、完全的CSS皮肤定制功能,所有外观包括显示图标/关闭按钮等都可以通过css设置。目前提供了五种皮肤,Vista、QQ、dmm-green、ExtBlue和BlackColl。有兴趣可以修改样式表文件定义新的皮肤。 4、提供四种消息类型。分别为消息提示、成功信息、错误信息、询问信息。 5、弹出消息框时屏蔽页面其它元素的操作,自动隐藏页面select及iframe下select(无限级select隐藏),并遮罩iframe等元素。 6、页面select控件状态还原时保持原状态,即如果原来select就是隐藏的,则消息框弹出并关闭后该select仍保持隐藏状态,而只显示原本显示的select。 7、消息组件弹出时屏蔽除Tab和回车外的几乎所有键盘操作(包括F5),“消息确认框”支持“tab键/左右方向键”切换确定/取消焦点。 8、可以页面加载的任意时间调用,如页面初始化时调用,页面加载完成后调用。 9、支持通过JSON和传统的参数传入方式。如ymprompt.alert('消息内容',300,200,'消息标题',handler)和ymprompt.alert({message:'消息内容',width:300,height:200,title:'消息标题',handler:handler}),这两种法是等价的。 10、只需要一个回调函数,可捕获确定、取消及关键按钮的点击事件。函数改变了1.0版需要对确定和取消按钮分别回调函数及不支持关闭事件的缺陷, 11、完全的封装,对外只暴露一个ymPrompt变量,有效防止与使用者程序变量的冲突。 12、程序(js)与样式(css)的完全分离,取消了1.0中自动加载css的功能,用户可根据需要加载对应css样式表单,降低了对样式配置的复杂度。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值