if(!I18n) { var I18n = { trans: function(s) { return s; } }; } var Message = function() { function getLoading(msg){ if(!msg){ msg = '姝e湪鍔犺浇'; } return '
'+msg+'
' }; var uiloadingCss = '' var _MessageTpl = '' + '' + '' + ' ' + '' + '' + ' ' + '' + '' + ' ' + '' + ''; var dynamicMessageHideTimeout = null; var loadingInfoId = null; function showDynamicMessage(target, msg, isSuccess, waitseconds,position) { if(!document.getElementById('dynamic-message-div')) { var _dialogInput = '
'; jQuery('body').append(_dialogInput); } if(isSuccess === true) { jQuery('#dynamic-message-div').attr('class', 'alert alert-success').css('background-image', ''); } else if(isSuccess === false){ jQuery('#dynamic-message-div').attr('class', 'alert alert-error').css('background-image', ''); } else{ jQuery('#dynamic-message-div').attr('class', 'alert alert-success').css('background-image', 'none'); } jQuery('#dynamic-message-div').html(msg); var left, top; if(position) { left = position.left ? position.left : 0; top = position.top ? position.top : 0; }else{ if(jQuery(target).length == 0) { return; } var position = jQuery(target).offset(); left = position.left + jQuery(target).width() + 5; top = position.top + jQuery(target).height() + 5; var messageWidth = jQuery('#dynamic-message-div').outerWidth(); var messageHeight = jQuery('#dynamic-message-div').height(); //瓒呰繃Body鐨勬樉绀鸿寖鍥达紝鍒欐樉绀哄湪宸︿晶 if((left + messageWidth) > jQuery('body').width()) { left = left - messageWidth; }else{ left = position.left; } //濡傛灉澶潬涓嬬殑璇濆垯鏄剧ず鍦ㄤ笂闈 if((top + messageHeight) > jQuery('body').height()) { top = top - messageHeight - 10; } } jQuery('#dynamic-message-div').css('left', left + 'px').css('top', top + 'px'); jQuery('#dynamic-message-div').show(); if(dynamicMessageHideTimeout) { clearTimeout(dynamicMessageHideTimeout); } var waitmilliseconds = (waitseconds || 2) * 1000; if (waitmilliseconds > 0) { dynamicMessageHideTimeout = setTimeout(function(){ document.getElementById('dynamic-message-div').style.display = 'none'; }, waitmilliseconds); } } return { /** 鏄剧ず鎴愬姛淇℃伅 */ success : function(target, msg, seconds,position) { showDynamicMessage(target, msg, true, seconds,position); }, error : function(target, msg, seconds, isclose,position) { if(isclose) { msg = '
X
' + msg; } showDynamicMessage(target, msg, false, seconds,position); }, waiting : function(targetid, msg){ if(arguments.length == 1) { //涓儴鏄剧ず杞藉叆淇℃伅 // loadingInfoId = Message.info({ // text: '\t' + arguments[0], // layout: 'center', // autoClose: false, // showCloseBtn: false, // closeOnSelfClick: false, // modal: true // }); // jQuery('#' + loadingInfoId + ' .noty_message').attr('style', 'padding-left:15px !important;background-image: none'); jQuery('body').append(getLoading(arguments[0])) jQuery('head').append(uiloadingCss) }else{ showDynamicMessage(targetid, '\t' + msg, null, -1); } }, hide : function(){ if(document.getElementById('ui-loading-wrap-div')){ document.getElementById('ui-loading-wrap-div').style.display = 'none'; jQuery('#ui-loading-wrap-div').remove() jQuery('head').children('#addCss').remove() } if (document.getElementById('dynamic-message-div')) { document.getElementById('dynamic-message-div').style.display = 'none'; } if(loadingInfoId) { jQuery.noty.close(loadingInfoId); loadingInfoId = null; } }, /** 鏇存柊innerhtml鐨勫唴瀹规潵鏄剧ず绛夊緟 */ innerwaiting : function(targetid, msg){ document.getElementById(targetid).style.display = ''; document.getElementById(targetid).innerHTML = '\t' + I18n.trans(msg); }, info: function(options) { if(typeof options == 'string') { options = { text: options }; } var type = 'information'; if(options.error) { type = 'error'; }else if(options.warning) { type = 'alert'; }else if(options.success) { type = 'success'; } if(options.autoClose === false) { options.timeout = 0; }else if(typeof options.timeout == 'undefined'){ //榛樿5绉掑悗娑堝け options.timeout = 5; } jQuery.noty.defaultOptions.theme = 'noty_theme_twitter'; jQuery.noty.defaultOptions.template = _MessageTpl; return noty({ text: I18n.trans(options.text), layout: options.layout || 'topRight', type: type, modal: options.modal, timeout: options.timeout * 1000, closeButton: (false == options.showCloseBtn? false : true), closeOnSelfClick: (false == options.closeOnSelfClick? false : true), force: true }); }, /** * 纭瀵硅瘽妗 * @param msg 鎻愮ず淇℃伅 * @param options * 濡傛灉鏄痜unction鐨勮瘽锛屽垯榛樿鏈変袱涓寜閽細纭畾鍜屽叧闂紝鈥滅‘瀹氣€濇墽琛岃繖涓嚱鏁帮紱 * 濡傛灉鏄疧bject鐨勮瘽锛屾敮鎸佷互涓嬪睘鎬ч厤缃細 * 1銆乼itle 瀵硅瘽妗嗘爣棰 * 2銆乥uttons 瀵硅瘽妗嗘寜閽暟缁勶紝鍏冪礌鏍煎紡锛 * { text: '鎸夐挳鏂囨湰', 'class': '鏍峰紡', 'click': 鐐瑰嚮浜嬩欢 } * @returns */ confirm: function(msg, options) { options = options || {}; if(typeof options == 'function') { var func = options; options = {}; options.buttons = [ { 'text': I18n.trans('纭畾'), 'class': 'btn-primary', 'click': function() { func(); } }, { 'text': I18n.trans('鍙栨秷'), 'click': function() { } } ]; } options.title = I18n.trans(options.title || '纭淇℃伅'); var tipId = 'config_tip_div' + new Date().getTime(); function closeDialog(tipid){ jQuery("#"+tipid).dialog( "close" ); jQuery('#'+tipid).remove(); jQuery('html, body').removeClass('overflow-h'); } if(jQuery('#'+tipId).length <=0 ){ jQuery('
').attr({'id':tipId,style:'display:none;'}).appendTo('body'); } var buttons = []; if(options.buttons){ for(var i = 0; i < options.buttons.length; i++) { buttons[i] = jQuery.extend({}, options.buttons[i]); buttons[i].click = function(index) { return function(){ if(typeof options.buttons[index].click == 'function')options.buttons[index].click(); closeDialog(tipId); }; }(i); } }else{ buttons = [ { text: I18n.trans('纭畾'), 'class': 'btn-primary', callback: function() { closeDialog(tipId); } } ]; } var dialogOptions = jQuery.extend({ modal: true, buttons: buttons, dialogClass: 'ui-dialog-confirm' }, options.dialogOption || {}); jQuery('html, body').addClass('overflow-h'); //jQuery("#"+tipId).html('
' + msg + '
').dialog(dialogOptions); //鎻愮ず妗嗕笉鍔燼lert-question灏忓浘鏍囥€ jQuery("#"+tipId).html('
' + msg + '
').dialog(dialogOptions); //鍒犻櫎瀹炰緥锛岄伩鍏峼-index璁$畻鍑洪敊 jQuery('.ui-dialog-confirm').find('.ui-dialog-titlebar-close').one('click', function(e){ jQuery("#"+tipId).parent().remove().end().remove(); jQuery('html, body').removeClass('overflow-h'); return false; }); // 闅愯棌鎺 confirm dialog x jQuery("#" + tipId).siblings('.ui-dialog-titlebar').find('.ui-dialog-titlebar-close').hide(); return jQuery("#"+tipId); }, //鎻愪氦鍓嶇殑涓€浜涙搷浣滐紝闃叉澶氭鎻愪氦 submitBefore: function(options) { options = options || {}; if(options.btn) { jQuery(options.btn).attr('disabled', 'disabled'); } if(!options.btn || options.modal) { Message.waiting(I18n.trans(options.msg || '姝e湪鎻愪氦...')) }else if(jQuery(options.btn).length >= 1) { Message.waiting(jQuery(options.btn)[0], I18n.trans(options.msg || '姝e湪鎻愪氦...')) } }, //鎻愪氦鍚庣殑鎭㈠鎿嶄綔 submitAfter: function(options) { options = options || {}; if(options.btn) { jQuery(options.btn).removeAttr('disabled'); } Message.hide(); }, showPageLoading: function(msg) { Message.waiting(I18n.trans('姝e湪鍔犺浇')); }, hidePageLoading: function() { Message.hide(); } }; }();