﻿(function ($) { $(function () { var timeOutId = null; $("body").find(":submit,:image,a").bind("click", function (event) { var $this = $(this); clearTimeout(timeOutId); timeOutId = setTimeout(function () { if ($currentDialog && !$currentDialog.data("dialog-target")) { $currentDialog.data("dialog-target", $this) } }, 500) }) }); var $currentDialog = null; var defaultOptions = { message: "", wrapper: "<p/>", title: "系统提示", width: 300, height: "auto" }; $.confirm = function (message, options, ok, cancel) { if ($.isFunction(options)) { cancel = ok; ok = options; options = defaultOptions } options = $.extend({}, defaultOptions, { buttons: { "取消": cancel || function () { return false }, "确定": ok || function () { var $target = $dialog.data("dialog-target"); if ($target) { if ($target.is("a")) { var href = $target.attr("href"); if (href.indexOf("javascript:") != -1) { eval(href.substring(11)) } } else { if ($target.is(":submit,:image")) { $target.parents("form").eq(0).find("#__EVENTTARGET").val($target.attr("name")).end().submit() } } } } } }, options); options.message = message; var $dialog = $("<div/>").attr("title", options.title); $currentDialog = $dialog; var msg = options.message; var $message = $(options.wrapper).html(msg.toString()); var distroy = function () { $dialog.dialog("destroy"); $currentDialog = null }; $.each(options.buttons, function (name, fn) { options.buttons[name] = function () { fn(); distroy() } }); $dialog.append($message).dialog({ bgiframe: true, width: options.width, height: options.height, modal: true, buttons: options.buttons, close: function () { distroy() } }); return false }; $.alert = function (message, options, ok) { if ($.isFunction(options)) { ok = options } options = $.extend({}, options, { buttons: { "确定": ok || function () { return false } } }); return $.confirm(message, options) }; window.__confirm = window.confirm; window.__alert = window.alert; window.confirm = $.confirm; window.alert = $.alert })(jQuery);
