/* jQuery Dialogs Plugin Cory S.N. LaViska (http://abeautifulsite.net/) Edit by 杜宏雷 2010-10-22 //用法: showLoading(msg, elem) 消息,消息显示的控件id showTip(msg, elem, autoClose) 消息,消息显示的控件id,是否自动关闭 */ (function ($) { $.popup = { ID: null, title: "", top: 0, left: 0, width: 0, height: 0, popType: "", repositionOnResize: false, // 窗口调整大小后是否重新定位 okButton: '确 定', // 确定按钮 cancelButton: '取 消', // 取消按钮 isButtonRow: false, // 是否显示按钮 isPopup: false, // 是否为popup窗口 autoClose: 0, // 窗口自动关闭 (大于0时窗口自动关闭) // 公共方法 tip: function (elem, msg, top, left, autoClose) { this.ID = 'tip'; this.popType = 'tip'; this.title = ''; this.isPopup = false; this.autoClose = autoClose || 0; this.width = 240; this.height = 30; //this.top = top || ($(document).height() - this.height) / 2; //this.left = left || ($(document).width() - this.width) / 2; //this.top = top || ($(window).height() - this.height) / 2; //this.left = left || ($(window).width() - this.width) / 2; this.top = document.documentElement.scrollTop + window.screen.height/ 3; this.left = left || ($(window).width() - this.width) / 2; $.popup._show(elem, msg, null); }, help: function (elem, title, msg, height) { this.ID = 'help'; this.title = title || this.title; this.width = 271; this.height = height || 40; var top = $(elem).offset().top; if (top - 60 - this.height > 0) { this.top = $(elem).offset().top - 60 - this.height; this.popType = 'help_up'; } else { this.top = top + 16; this.popType = 'help_down'; } this.left = $(elem).offset().left - 30; $.popup._show(elem, msg); }, prompt: function (elem, title, msg, isButtonRow, isPopup, callback, top, left, width, height) { this.ID = 'prompt'; this.title = title || this.title; this.popType = 'prompt'; this.isButtonRow = isButtonRow || this.isButtonRow; this.isPopup = isPopup || this.isPopup; this.top = top || $(elem).offset().top + 16; this.left = left || $(elem).offset().left; this.width = width || 300; this.height = height || 120; $.popup._show(elem, msg, function (result) { if (callback) callback(result); }); }, // 私有方法 _show: function (elem, msg, callback) { if ($("#_Popup_" + this.ID).length < 1) { //$.popup._hide(); var html = '<div class="popup_' + this.popType + '" id="_Popup_' + this.ID + '" style="width:' + this.width + 'px">\ <div class="popup_header" id="_Title_"><h1>' + this.title + '</h1><div class="h_r"></div></div>\ <div class="popup_content">\ <div id="_Container_' + this.ID + (this.height == 0 ? '">' : '" style="height:' + this.height + 'px">') + msg + '</div></div>' + (this.isButtonRow ? '<div class="buttonRow" id="_ButtonRow_' + this.ID + '"></div>' : '') + '<div class="popup_bottom"><div class="b_r"></div>\ </div>'; //$(elem).append(html); if (this.popType == "tip" && elem != null) { $(elem).append(html); //alert(elem); } else { $("BODY").append(html); //alert(this.popType); } // IE6 Fix //var pos = ($.browser.msie && parseInt($.browser.version) <= 6) ? 'absolute' : 'fixed'; $("#_Popup_" + this.ID).css({ position: 'absolute', zIndex: 100, padding: 0, margin: 0 }); $("#_Popup_" + this.ID).css({ minWidth: $("#_Popup_" + this.ID).outerWidth(), maxWidth: $("#_Popup_" + this.ID).outerWidth() }); if (elem == null) { $.popup._reposition(); } //$.popup._reposition(); $.popup._maintainPosition(true); $.popup._bindType(); if (this.autoClose > 0) { $.popup._autoClose(); } } else { $("#_Container_" + this.ID).html(msg); $.popup._bindType(callback); $.popup._reposition(); $.popup._maintainPosition(true); $("#_Popup_" + this.ID).show(); if (this.autoClose > 0) { $.popup._autoClose(); } } }, _bindType: function (callback) { switch (this.popType) { case 'help': if (this.isButtonRow) { $("#_ButtonRow_" + this.ID).after('<input type="button" value="' + $.popup.okButton + '" id="_ButtonOK_' + this.ID + '" />'); $("#_ButtonOK_" + this.ID).click(function () { $.popup._hide(); callback(true); }); $("#_ButtonOK_" + this.ID).keypress(function (e) { if (e.keyCode == 13 || e.keyCode == 27) $("#_ButtonOK_" + this.ID).trigger('click'); }); } break; case 'prompt': if (this.isButtonRow) { $("#_ButtonRow_" + this.ID).html('<input type="hidden" id="hid_' + this.ID + '" />\ <input type="button" value="' + $.popup.okButton + '" id="_ButtonOK_' + this.ID + '"/>\ <input type="button" value="' + $.popup.cancelButton + '" id="_ButtonCancel_' + this.ID + '"/>'); $("#_ButtonOK_" + this.ID).click(function () { var val = $("#hid_" + this.ID).val(); $.popup._hide(); if (callback) callback(val); }); $("#_ButtonCancel_" + this.ID).click(function () { $.popup._hide(); if (callback) callback(null); }); $("#_ButtonOK_" + this.ID + ", #_ButtonCancel_" + this.ID).keypress(function (e) { if (e.keyCode == 13) $("#_ButtonOK_" + this.ID).trigger('click'); if (e.keyCode == 27) $("#_ButtonCancel_" + this.ID).trigger('click'); }); } break; case 'tip': break; default: break; } }, _hide: function () { if ($("#_Popup_" + this.ID).length > 0) { if (this.popType == "tip") { $("#_Popup_" + this.ID).delay(800).fadeOut(500); } else { $("#_Popup_" + this.ID).remove(); } $.popup._maintainPosition(false); } }, _autoClose: function () { setTimeout("$.popup._hide()", this.autoClose * 2000); }, _reposition: function () { var top = this.top || (($(document).height() / 2) - ($("#popup_container").outerHeight() / 2)); var left = this.left || (($(document).width() / 2) - ($("#popup_container").outerWidth() / 2)); if (top < 0) top = 0; if (left < 0) left = 0; // IE6 fix //if ($.browser.msie && parseInt($.browser.version) <= 6) top = top + $(window).scrollTop(); $("#_Popup_" + this.ID).css({ top: top + 'px', left: left + 'px' }); }, _maintainPosition: function (status) { if ($.popup.repositionOnResize) { switch (status) { case true: $(window).bind('resize', $.popup._reposition); break; case false: $(window).unbind('resize', $.popup._reposition); break; } } } } // 显示Loading信息 showLoading = function (msg, elem) { var loadingMsg = msg || '正在加载数据,请稍候...'; if (elem == null) { $.popup.tip(elem, '<table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0"><tr>' + '<td align="center"><img src="http://images.cnblogs.com/icons/loading.gif" /> ' + loadingMsg + '</td></tr></table>', null, null, 0); } else { var middle = ($(elem).height() - 30) / 2; var top = $(elem).offset().top + (middle > 0 ? middle : 0); $.popup.tip(elem, '<table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0"><tr>' + '<td align="center"><img src="http://images.cnblogs.com/icons/loading.gif" /> ' + loadingMsg + '</td></tr></table>', top, null, 0); } } hideTip = function () { $("#_Popup_tip").fadeOut(500); } showTip = function (msg, elem, autoClose) { if (elem == null) { //alert("elem==null"); $.popup.tip(null, '<table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0"><tr>' + '<td align="center">' + msg + '</td></tr></table>', null, null, autoClose); } else { var middle = ($(elem).height() - 50) / 2; var top = $(elem).offset().top + (middle > 0 ? middle : 0); //alert(top); $.popup.tip(elem, '<table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0"><tr>' + '<td align="center">' + msg + '</td></tr></table>', top, null, autoClose); } } showHelper = function (elem, title, msg, height) { $.popup.help(elem, title, msg, height); } showPrompt = function (elem, title, msg, isButtonRow, isPopup, callback, top, left, width, height) { $.popup.prompt(elem, title, msg, isButtonRow, isPopup, callback, top, left, width, height); } })(jQuery);
CSS:
/* * { padding:0; margin:0; font-size:13px; } a{ color:#333; } ul li{ height:25px; } */ .popup_prompt{ border:1px solid #909090; background:#FFF; } .popup_prompt .popup_header{ } .popup_prompt h1 { height:25px; margin:1px; font-size:13px; color:#F4793A; font-weight:bold; text-indent:10px; padding-top:7px; } .popup_prompt .popup_content { margin:1px; padding:10px; font-size:13px; } .popup_prompt .buttonRow { height:30px; line-height:30px; text-align:right; margin:1px; } .popup_prompt input { color:#555; border:1px solid #808080; margin-right:5px; height:20px; line-height:18px; padding:0px 3px; } /*------- Tip Style -------*/ .popup_tip { border:1px #FF7101 solid; vertical-align:middle; } .popup_tip .popup_content { color:#000; background:#FCFBE0; text-align:center; } .popup_tip img { vertical-align:middle; } /*------- Help Style -------*/ .popup_help_up,.popup_help_down { width:271px; filter:Alpha(Opacity=85); } .popup_help_up { background:url(/images/tip/help_t1.gif) left top no-repeat; } .popup_help_down { background:url(/images/tip/help_t2.gif) left top no-repeat; } .popup_help_up a:link,.popup_help_down a:link { text-decoration:underline; } .popup_help_up .popup_header { margin-top:9px; } .popup_help_down .popup_header { margin-top:22px; } .popup_help_up .popup_header,.popup_help_down .popup_header { height:18px; border-left:1px #000 solid; border-right:1px #000 solid; background:#FFFFE1; } .popup_help_up .popup_header h1,.popup_help_down .popup_header h1 { font-size:13px; text-indent:28px; background:url(/images/icons/action.gif) 10px 0px no-repeat; } .popup_help_up .popup_content,.popup_help_down .popup_content { line-height:16px; padding:5px 10px; border-left:1px #000 solid; border-right:1px #000 solid; background:#FFFFE1; } .popup_help_up .popup_bottom { height:22px; background:url(/images/tip/help_b1.gif) left top no-repeat; } .popup_help_down .popup_bottom { height:9px; background:url(/images/tip/help_b2.gif) left top no-repeat; }
调用;
<link href="/content/css/jquery.Popup.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="/scripts/jquery.Popup.js"></script>
showTip("发布成功!", null, 1); //在屏幕中间
showTip("发布成功!", "#bottom", 1); 指定id中显示
如果在$的方法中,应该先调用jQuery.noConflict()方法,否则会出js错 无$.pop 对象!
var sign = $("#Sel_Sign").val();
$.post("/MemberCenter/UpdateSignAjax", { 'Sign': sign }, function (data) {
if (data != "") {
$("#txindex_topms").html(data);
$("#txindex_toptm").html(Date());
jQuery.noConflict();
showTip("发布成功!", "#bottom", 1);
}
else {
jQuery.noConflict();
showTip("发布失败!", null, 1);
}