데모 주소:
http://runjs.cn/detail/miwszbne
공유 지침:
가장 간단한 호출을 위해 N번째 휠을 발명한 jquery는 경고를 시뮬레이션하고 팝업 창 플러그인을 확인합니다
전화 방법:
$.alert('your message'); $.alert('your message',function(){ $.alert('click ok button') }); $.confirm('your message'); $.confirm('your message',function(result){ if(result){ $.alert('click ok button') }else{ $.alert('click cancel button') } })
호출의 편의를 위해 CSS 스타일을 js로 직접 작성하였습니다. 호환성 측면에서는 IE8, 크롬, 사파리만 테스트해 보았는데 모두 괜찮습니다.
IE8은 괜찮고 다른 최신 브라우저도 괜찮을 것입니다.
(function ($) { $.extend({ _isalert:0, alert:function(){ if(arguments.length){ $._isalert=1; $.confirm.apply($,arguments); } }, confirm:function(){ var args=arguments; if(args.length&&(typeof args[0] == 'string')&&!$('#alert_overlay').length){ 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>'); 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>'); if($._isalert) dialog.find('.alert_btn_cancel').hide(); dialog.on('contextmenu',function(){ return !1; }).on('click','.alert_btn_ok',function(){ dialog.remove(); if(typeof args[1]=='function') args[1].call($,!0); }).on('click','.alert_btn_cancel',function(){ dialog.remove(); if(typeof args[1]=='function') args[1].call($,!1); }).appendTo('body'); } $._isalert=0; } }); })($);
위 내용은 이 글의 전체 내용입니다. 모두 마음에 드셨으면 좋겠습니다.