首页 > 语言 > JavaScript > 正文

jquery模拟alert的弹窗插件

2024-05-06 16:24:10
字体:
来源:转载
供稿:网友

这篇文章主要介绍了jquery模拟alert的弹窗插件的相关资料,需要的朋友可以参考下

演示地址:

http://runjs.cn/detail/miwszbne

分享说明:

第N次造轮子了,只为最简单的调用,jquery模拟alert和confirm的弹窗插件

调用方法:

 

 
  1. $.alert('your message'); 
  2.  
  3. $.alert('your message',function(){ 
  4. $.alert('click ok button'
  5. }); 
  6.  
  7. $.confirm('your message'); 
  8.  
  9. $.confirm('your message',function(result){ 
  10. if(result){ 
  11. $.alert('click ok button'
  12. }else
  13. $.alert('click cancel button'
  14. }) 

为了调用方便,直接将css样式写在了js中,兼容性方面只测试了IE8和chrome以及safari,都还可以。

IE8没问题想必其他现代浏览器应该也是OK的。

 

 
  1. (function ($) { 
  2. $.extend({ 
  3. _isalert:0, 
  4. alert:function(){ 
  5. if(arguments.length){ 
  6. $._isalert=1; 
  7. $.confirm.apply($,arguments); 
  8. }, 
  9. confirm:function(){ 
  10. var args=arguments; 
  11. if(args.length&&(typeof args[0] == 'string')&&!$('#alert_overlay').length){ 
  12. if(!$('#alert_style').length) $('body').append('<style id="alert_style" type="text/css">#alert_overlay{position:fixed;width:100%;height:100%;top:0;left:0;z-index:999;background:#000;filter:alpha(opacity=5);opacity:.05}#alert_msg{position:fixed;width:400px;margin-left:-201px;left:50%;top:20%;z-index:1000;border:1px solid #aaa;box-shadow:0 2px 15px rgba(0,0,0,.3);background:#fff}#alert_content{padding:20px;font-size:14px;text-align:left}#alert_buttons{padding:10px;border-top:1px solid #aaa;text-align:right;box-shadow:0 1px 0 #fff inset;background:#eee;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}#alert_buttons .alert_btn{padding:5px 12px;margin:0 2px;border:1px solid #aaa;background:#eee;cursor:pointer;border-radius:2px;font-size:14px;outline:0;-webkit-appearance:none}#alert_buttons .alert_btn:hover{border-color:#bbb;box-shadow:0 1px 2px #aaa;background:#eaeaea}#alert_buttons .alert_btn:active{box-shadow:0 1px 2px #aaa inset;background:#e6e6e6}</style>'); 
  13. var dialog=$('<div id="alert_overlay"></div><div id="alert_msg"><div id="alert_content">'+args[0]+'</div><div id="alert_buttons"><button class="alert_btn alert_btn_ok">确定</button><button class="alert_btn alert_btn_cancel">取消</button></div></div>'); 
  14. if($._isalert) dialog.find('.alert_btn_cancel').hide(); 
  15. dialog.on('contextmenu',function(){ 
  16. return !1; 
  17. }).on('click','.alert_btn_ok',function(){ 
  18. dialog.remove(); 
  19. if(typeof args[1]=='function') args[1].call($,!0); 
  20. }).on('click','.alert_btn_cancel',function(){ 
  21. dialog.remove(); 
  22. if(typeof args[1]=='function') args[1].call($,!1); 
  23. }).appendTo('body'); 
  24. $._isalert=0; 
  25. }); 
  26. })($); 

以上所述就是本文的全部内容了,希望大家能够喜欢。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选