jquery.dialog_2course.js 6.69 KB
(function($){
    $.fn.extend({    
        jdialog: function(options) {   
        	var defaults = {   
        	     width : "503",		//宽度
        	     height : "354",		//高度
        	     title : "提示",	//标题
        	     content : ""		//加载内容:url,:text,:id,:iframe
            }                   
            var o =  $.extend(defaults, options);     

        	var clientH;	//浏览器高度
        	var clientW;	//浏览器宽度
        	var div_x;		//DIV横坐标
        	var div_y;		//DIV纵坐标            
        	
        	getPageScrollTop = function(){
        	    var yScrolltop;
        	    var xScrollleft;
        	    if (self.pageYOffset || self.pageXOffset) {
        	      yScrolltop = self.pageYOffset;
        	      xScrollleft = self.pageXOffset;
        	    } else if(document.documentElement && document.documentElement.scrollTop
        	      || document.documentElement.scrollLeft ){   // Explorer 6 Strict
        	      yScrolltop = document.documentElement.scrollTop;
        	      xScrollleft = document.documentElement.scrollLeft;
        	    } else if (document.body) {// all other Explorers
        	      yScrolltop = document.body.scrollTop;
        	      xScrollleft = document.body.scrollLeft;
        	    }
        	    arrayPageScroll = new Array(xScrollleft,yScrolltop);
        	    return arrayPageScroll;
        	}

            create = function() {
            	var minTop = 10;//弹出的DIV记顶部的最小距离
        		clientH = $(window).height();
        		clientW = $(window).width();
        		var arrayScroll = getPageScrollTop();				
        		div_x = (clientW - o.width)/2;	//DIV横坐标
        		div_y = (clientH - o.height)/2;	//DIV纵坐标
        		div_x += arrayScroll[0]; //DIV显示的实际横坐标
        		div_y += arrayScroll[1]; //DIV显示的实际纵坐标
        		if(div_y < minTop) div_y = minTop;
        		
					$("body").append('<div id="divDialog" style="z-index:1025"><div id="divTitle"></div><div id="divContent"></div></div>');
					$("#divCon").append(o.title);
					//开始加载内容
					var contentType = o.content.substring(0,o.content.indexOf(":"));
					var content = o.content.substring(o.content.indexOf(":")+1,o.content.length);
					switch(contentType){
						case "url":
							var content_array=content.split("?");
							$.ajax({
								type:content_array[0],
								url:content_array[1],
								data:content_array[2],
								async:false,
								error:function(){
									$("#divContent").html("error...");
								},
								success:function(html){
									$("#divContent").html(html);			
									
									var main_height = $("#divDialog").find(".main").eq(0).height();
									$("#divDialog").find(".lightbox").eq(0).css({"height":(parseInt(main_height)+19)});
									
									/*add in 王晓斌*/
									if(options && options.callback){
										options.callback(options);
									}
									/*add end*/
								}
							});
							break;
						case "text":
							$("#divContent").html(content);
							break;
						case "id":
							$("#divContent").html($("#"+content+"").html());
							break;
						case "iframe":
							$("#divContent").html("<iframe src=\""+content+"\" style=\"width:"+(o.width)+"px;height:"+(o.height-40)+"px\;overflow:none;\" frameborder=\"0\" marginheight=\"0\" marginwidth=\"0\"></iframe>");
							break;
						case "html":

						default:
							var $msg = '<div id="msgContainer"><div id="msgMiddle"><div id="msgCenter">'+content+'</div><div style="clear:both;"></div><div id="msgOk"><a><img src="../admin/images/show_cw19.gif" /></a></div></div></div>';
							$("#divContent").append($msg);
							$("#msgOk>a").click(function(){ $("#divDialog").remove(); $("#divLock").remove(); });
							if( o.msgTop !== undefined ) $("#msgCenter").css({"margin-top":o.msgTop});
							if( o.msgLeft !== undefined ) $("#msgCenter").css({"margin-left":o.msgLeft});
							if( o.okTop !== undefined ){
								if( jQuery.browser.msie && jQuery.browser.version==='8.0' ) $("#msgOk").css({"padding-top":o.okTop});
								else $("#msgOk").css({"margin-top":o.okTop});
							}
							break;
					}//end switch
				
        		$("#divDialog").css("left", div_x);
        		$("#divDialog").css("top", div_y);
        		$("#divDialog").width(o.width);
        		$("#divDialog").height(o.height);
        		$("#divContent").height(o.height - $("#divTitle").height()-8 );
				//$("body").css({overflow:"hidden"})
            }//end init
            
            lockScreen = function() {
            	if($("#divLock").length == 0)	//判断DIV是否存在
            		$("body").append('<div id="divLock" style="z-index:1024"><iframe style="position:absolute; z-index:-1;width:100%;height:100%;filter:alpha(Opacity=0);opacity:0;" frameborder="0" src="about:blank"></iframe></div>');
        		//clientH = $(window).height();
        		//clientW = $(window).width();            		
            	//$("#divLock").height(clientH);
        		//$("#divLock").width(clientW);	
            }

        	lockScreen();
        	create();            
            
        	$("#divClose").click( function(){
        		$("#divDialog").remove();
        		$("#divLock").remove();
        	});
        	$(window).resize( function() {
        		if($("#divLock").length != 0){
        			lockScreen();
        		}
        		if($("#divDialog").length != 0){
        			create();
        		}
        	});
        }   
    });   
})(jQuery);
(function($){
    $.fn.extend({    
        closeJDialog: function() {   
        	$("#divDialog").remove();
        	$("#divLock").remove();
		}
	});
})(jQuery);
 
function showMessage(type){
	switch(type){
		case 'addStockSucc':
			$(document).jdialog({ width:280,height : 182,title:"提示信息",msgTop: 25,msgLeft: 80,okTop: 25,content : 'html:<img src="../admin/images/show_cw19.gif" style="display:block;float:left;"><div style="float:left;padding-top:15px;padding-left:8px">添加成功</div>'});
			break;
		case 'noTitle':
			$(document).jdialog({ width:280,height : 182,title:"系统提示",msgTop: 18,msgLeft: 30,okTop: 5,content : 'html:<img src="../admin/images/show_cw19.gif" style="display:block;float:left;"><div style="float:left;padding-top:5px;padding-left:8px;text-align:left;">您还没有获得任何称号,<br/><br/>继续努力吧!</div>'});
			break;
		case 'noexists':
			$(document).jdialog({ width:280,height : 182,title:"系统提示",msgTop: 18,msgLeft: 30,okTop: 5,content : 'html:<img src="../admin/images/show_cw19.gif" style="display:block;float:left;"><div style="float:left;padding-top:5px;padding-left:8px;text-align:left;height:55px;line-height:18px;width:150px;">抱歉,您输入的股票无效!请在搜索框中输入正确的股票名称、代码或简拼</div>'});			
			break;
		default:
	}
}