/** * z-index在1亿层级 * 弹出提示消息框,用于模拟阻塞操作(通过回调函数实现) * @class BI.Msg */ BI.Msg = function () { var $mask, $pop; var messageShows = []; var toastStack = []; return { alert: function (title, message, callback) { this._show(false, title, message, callback); }, confirm: function (title, message, callback) { this._show(true, title, message, callback); }, prompt: function (title, message, value, callback, min_width) { // BI.Msg.prompt(title, message, value, callback, min_width); }, toast: function (message, options, context) { options = options || {}; context = context || BI.Widget._renderEngine.createElement("body"); var level = options.level || "common"; var autoClose = BI.isNull(options.autoClose) ? true : options.autoClose; var callback = BI.isFunction(options.callback) ? options.callback : BI.emptyFn; var toast = BI.createWidget({ type: "bi.toast", cls: "bi-message-animate bi-message-leave", level: level, autoClose: autoClose, closable: options.closable, text: message, listeners: [{ eventName: BI.Toast.EVENT_DESTORY, action: function () { BI.remove(toastStack, toast.element); var _height = BI.SIZE_CONSANTS.TOAST_TOP; BI.each(toastStack, function (i, element) { element.css({"top": _height}); _height += element.outerHeight() + 10; }); callback(); } }] }); var height = BI.SIZE_CONSANTS.TOAST_TOP; BI.each(toastStack, function (i, element) { height += element.outerHeight() + 10; }); BI.createWidget({ type: "bi.absolute", element: context, items: [{ el: toast, left: "50%", top: height }] }); toastStack.push(toast.element); toast.element.css({"margin-left": -1 * toast.element.outerWidth() / 2}); toast.element.removeClass("bi-message-leave").addClass("bi-message-enter"); autoClose && BI.delay(function () { toast.element.removeClass("bi-message-enter").addClass("bi-message-leave"); toast.destroy(); }, 5000); return function () { toast.element.removeClass("bi-message-enter").addClass("bi-message-leave"); toast.destroy(); }; }, _show: function (hasCancel, title, message, callback) { BI.isNull($mask) && ($mask = BI.Widget._renderEngine.createElement("