jquery類比alert的彈窗外掛程式_jquery

來源:互聯網
上載者:User

示範地址:

http://runjs.cn/detail/miwszbne

分享說明:

第N次造輪子了,只為最簡單的調用,jquery類比alert和confirm的彈窗外掛程式

調用方法:

$.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和chrome以及safari,都還可以。
IE8沒問題想必其他現代瀏覽器應該也是OK的。

(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;    }  });})($);

以上所述就是本文的全部內容了,希望大家能夠喜歡。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.