/** * 警告 * @param {String}消息內容 */ artDialog.alert = function (content, callback) { return artDialog({ id: 'Alert', icon: 'warning', fixed: true, // lock: true, width:250, height:50, content: content, ok: true, close: callback }); };
/** * 確認 * @param {String}消息內容 * @param {Function}確定button回調函數 * @param {Function}取消button回調函數 */ artDialog.confirm = function (content, yes, no) { return artDialog({ id: 'Confirm', icon: 'question', fixed: true, // lock: true, opacity: .1, width:250, height:50, content: content, ok: function (here) { return yes.call(this, here); }, cancel: function (here) { return no && no.call(this, here); } }); };
/** * 提問 * @param {String}提問內容 * @param {Function}回調函數. 接收參數:輸入值 * @param {String}默認值 */ artDialog.prompt = function (content, yes, value) { value = value || ''; var input; return artDialog({ id: 'Prompt', icon: 'question', fixed: true, // lock: true, width:250, height:50, opacity: .1, content: [ '<div style="margin-bottom:5px;font-size:12px">', content, '</div>', '<div>', '<input value="', value, '" style="width:18em;padding:6px 4px" />', '</div>' ].join(''), init: function () { input = this.DOM.content.find('input')[0]; input.select(); input.focus(); }, ok: function (here) { return yes && yes.call(this, input.value, here); }, cancel: true }); };
/** * 短暫提示 * @param {String}提示內容 * @param {Number}顯示時間 (默認1.5秒) */ artDialog.tips = function (content, time) { return artDialog({ id: 'Tips', title: false, cancel: false, fixed: true, // lock: true, width:250, height:50 }) .content('<div style="padding: 0 1em;">' + content + '</div>') .time(time || 1); };
//右下角滑動通知 artDialog.notice = function (options) { var opt = options || {}, api, aConfig, hide, wrap, top, duration = 800; var config = { id: 'Notice', left: '100%', top: '100%', fixed: true, drag: false, width:250, height:50, resize: false, follow: null, lock: false, init: function(here){ api = this; aConfig = api.config; wrap = api.DOM.wrap; top = parseInt(wrap[0].style.top); hide = top + wrap[0].offsetHeight; wrap.css('top', hide + 'px') .animate({top: top + 'px'}, duration, function () { opt.init && opt.init.call(api, here); }); }, close: function(here){ wrap.animate({top: hide + 'px'}, duration, function () { opt.close && opt.close.call(this, here); aConfig.close = $.noop; api.close(); }); return false; } }; for (var i in opt) { if (config[i] === undefined) config[i] = opt[i]; }; return artDialog(config); };
//調用范例: art.dialog.alert('人品越來越不那么穩定了,請檢查!'); art.dialog.confirm('你確定要刪除這掉消息嗎?', function () { art.dialog.tips('運行確定操作'); }, function () { art.dialog.tips('運行取消操作'); }); art.dialog.prompt('請輸入圖片網址', function (val) { art.dialog.tips(val); }, 'http://'); art.dialog.tips('數據正在提交..', 2); //[more code..] art.dialog.tips('成功。已經保存在server');