(function() { $.extend($.fn, { //提示框组件 alert: function(options) { var defaults = { tip: '', cancelBtnLbl: '取消', confirmBtnLbl: '确定', otherBtnLbl: '其他', maskColor: '#000', cancelCallback: null, confirmCallback: null, otherCallback:null }; var settings = $.extend(defaults, options || {}), $this; function initialize() { var HTML = '
'+ '
'+ '
'+ '
'+ '' + settings.tip + ''+ '
'+ '
'+ '' + settings.cancelBtnLbl + ''+ '' + settings.confirmBtnLbl + ''+ '' + settings.otherBtnLbl + ''+ '
'+ '
'; $this = $(HTML).appendTo($('body')); var $btn = $this.children('div:eq(1)'); $btn.children().eq(0).off('click', cancelBtnClickHandler).on('click', cancelBtnClickHandler); $btn.children().eq(1).off('click', confirmBtnClickHandler).on('click', confirmBtnClickHandler); $btn.children().eq(2).off('click', otherBtnClickHandler).on('click', otherBtnClickHandler); } //取消按钮事件 function cancelBtnClickHandler() { $this.remove(); if (settings.cancelCallback && typeof settings.cancelCallback == 'function') { settings.cancelCallback(); } } function confirmBtnClickHandler() { $this.remove(); if (settings.confirmCallback && typeof settings.confirmCallback == 'function') { settings.confirmCallback(); } } function otherBtnClickHandler(){ $this.remove(); if (settings.otherCallback && typeof settings.otherCallback == 'function') { settings.otherCallback(); } } initialize(); }, }); })(jQuery)