jquery插件编写方法

使用闭包。

面向对象编程

/**
 * jQuery AIUESuite V0.1
 *
 * author: lixiaopeng 
 *
 * mail:lixp3@asiainfo-linkage.com
 */

(function($) {
var pageWidth =function(){
	if($.browser.msie){
		return document.compatMode == "CSS1Compat"? document.documentElement.clientWidth:document.body.clientWidth;
	}else{
		return self.innerWidth;
	}
}
var pageHeight =function(){
	if($.browser.msie){
		return document.compatMode == "CSS1Compat"? document.documentElement.clientHeight:document.body.clientHeight;
	}else{
		return self.innerHeight;
	}
}
$.loading = {
	show : function() {
		var h=pageHeight();
		$(document.body).height(h);
		var wrap=$(document.body);
		$("<div class=\"loading-mask\" style='z-index:9998'><iframe style='display:none'/></div>").css({display:"block",width:wrap.width(),height:wrap.height(),opacity:'0.6'}).appendTo(wrap).stop().fadeTo(650, 0.6);
		$("<div class=\"loading-mask-msg\" style='z-index:9999'><div class=\"loading-mask-icon\"></div><div class=\"loading-mask-text\"></div><div style=\"clear:both;\"></div><div class=\"loading-mask-succe\" style='display:none; color:#555; padding:30px; line-height:180%; font-size:14px;'><div class=\"wfb_ok\"></div><div class=\"loading-wfb-text\"></div><input type=\"button\" class=\"loading-wfb-but\" id=\"loading-wfb-but\" /></div><iframe style='display:none'/></div>").appendTo(wrap).css({display:"block",left:(wrap.width()-$("div.loading-mask-msg",wrap).outerWidth())/2,top:(wrap.height()-$("div.loading-mask-msg",wrap).outerHeight())/2,opacity:'0.6'}).stop().fadeTo(650, 1);
		$("div.loading-mask-text").html($.loading.defaults.defaultMsg);
		$("div.loading-wfb-text").html($.loading.defaults.wfbMsg);
		$("#loading-wfb-but").bind("click",function(){
			wrap.find("div.loading-mask-msg").remove();
			wrap.find("div.loading-mask").remove();
			$("#wfb_01_form,#wfb_01").stop().fadeTo(650,0);
			$("#wfb_02").stop().fadeTo(650, 1);
		});
	},
	changedom:function(){
		var wrap=$(document.body);
		wrap.find("div.loading-mask-msg .loading-mask-icon,div.loading-mask-msg .loading-mask-text").remove();
		wrap.find("div.loading-mask-succe").fadeIn();
	},
	remove : function() {
		var wrap=$(document.body);
		wrap.find("div.loading-mask-msg").remove();
		wrap.find("div.loading-mask").remove();
	},
	fadeOut:function(){
		var wrap=$(document.body);
		wrap.find("div.loading-mask-msg").fadeOut(1000,function(){
			$.loading.remove();
		});
		wrap.find("div.loading-mask").fadeOut(1000,function(){
			$.loading.remove();
		});
	},
	loadElemId:function(ElemId){
		var loadElem = document.getElementById(ElemId);  
		if (loadElem.attachEvent){  
			loadElem.attachEvent("onload", function(){  
				 $.loading.fadeOut();  
			 });  
		} else {  
			 loadElem.onload = function(){  
				 $.loading.fadeOut(); 
			};  
		}  
		
	}
};
$.loading.defaults = {
	defaultMsg : "系统正在加载,请稍候……",
	wfbMsg : "意见已受理,赠送您的5元好利来电子代金券将于<span style='color:red;'>下月10个工作日内</span>,通过短信形式发送至您的手机,请注意查收。<br />再次感谢您的参与。"
}
$.selectPage = {
	showpage : function() {
		var showpageNum = $("#wlanfeedbackmesbox").attr("title");
		if(showpageNum == "n"){
			$("#wfb_01").css({display:"block",opacity:"0"}).stop().fadeTo(650, 1,function(){
				$("#wfb_01_form").slideDown("slow");
			});
		}else if(showpageNum == "y"){
			$("#wfb_02").css({display:"block",opacity:"0"}).stop().fadeTo(650, 1);
		}
	},
	wfbsubmit: function() {
		$("#wfb_submit").bind("click",function(){
			$.loading.show();
			var t=setTimeout("$.loading.changedom();",2000);
			//$.loading.changedom();
		});
	}
};
$.weatherApp = {
	intoSystem:function(skyType) {
		var hdElem = $("#hd");
		$("<div class='weather "+skyType+"'></div>").appendTo(hdElem).fadeIn("slow");
	}
};
$.AiUEskin = {
	skinloadpage:function() {
		$("#AIUESkin").find("li").eq(0).addClass("skin_itrm_bluecheck");
	},
	skinCheckEffe:function(){
		$("#AIUESkin").find("li").eq(0).bind("click",function(){
			$("#AIUESkin").find("li").eq(1).removeClass("skin_itrm_redcheck");
			$(this).addClass("skin_itrm_bluecheck");	
			$("#hd").removeClass("hd_red");
			$("#logo").removeClass("logo_red");
			$("div.itemText").removeClass("itemText_red");
			$("#AdminInformation_show").removeClass("AdminInformation_show_red");
			$("#AdminInformation_hide").removeClass("AdminInformation_hide_red");
			$("#address").removeClass("address_red");
			$("#ad_hide").removeClass("ad_red_hide");
			$("#ad_show").removeClass("ad_red_show");
			$("#AdminInformation_show").find(".changeTheme").removeClass("changeTheme_red");
			$("#AdminInformation_show").find(".admin").removeClass("admin_red");
			$("#AdminInformation_show").find(".logout").removeClass("logout_red");
		});
		$("#AIUESkin").find("li").eq(1).bind("click",function(){
			$("#AIUESkin").find("li").eq(0).removeClass("skin_itrm_bluecheck");
			$(this).addClass("skin_itrm_redcheck");
			$("#hd").addClass("hd_red");
			$("#logo").addClass("logo_red");
			$("div.itemText").addClass("itemText_red");
			$("#AdminInformation_show").addClass("AdminInformation_show_red");
			$("#AdminInformation_hide").addClass("AdminInformation_hide_red");
			$("#address").addClass("address_red");
			$("#ad_hide").addClass("ad_red_hide");
			$("#ad_show").addClass("ad_red_show");
			$("#AdminInformation_show").find(".changeTheme").addClass("changeTheme_red");
			$("#AdminInformation_show").find(".admin").addClass("admin_red");
			$("#AdminInformation_show").find(".logout").addClass("logout_red");
		});
	}
};	
$.systemAdmin = {
	showMain : function() {
		var pageW=pageWidth();
		if(pageW<1220){
			$("div#AdminInformation_show").css({left:"820px"});
			$("div#AdminInformation_hide").css({left:"1063px"});
		}else if(pageW>1220){
			$("div#AdminInformation_show").css({left:"955px"});
			$("div#AdminInformation_hide").css({left:"1195px"});
		}
		$("#AdminInformation_show").css({display:"block"});
		$("#AdminInformation_hide").css({display:"none"});
		$("#ad_hide").bind("click",function(){
			$(this).parent().parent().slideUp("normal");
			$("#AdminInformation_hide").slideDown("normal");
		});
		$("#ad_show").bind("click",function(){
			$(this).parent().slideUp("normal");
			$("#AdminInformation_show").slideDown("fast");
		});
	}
};
$.menuEffe = {
	menuHavChe:function() {
		var liElem = $("#menuList li");
		$("<div class='menuHover'></div>").css({display:"block",opacity:"0"}).appendTo(liElem);
		$("#menuList li").hover(function(){
			$(this).find(".menuHover").stop().fadeTo(650, 1);					 
			},function(){
			$(this).find(".menuHover").stop().fadeTo(650, 0);		
		});
	},
	menuActive:function(){
		$("#menuList>li:eq(0)").find(".itemText").addClass("itemTextActive");
		$("#menuList>li").bind("click",function(){
			$(this).siblings().find(".itemText").removeClass("itemTextActive");	
			$(this).find(".itemText").addClass("itemTextActive");	
		});
	},
	menu2LevelEffe:function(){//二级菜单效果
		var MenuItemElem = $("#menuList>li");
		var child_menu = $("#childMenuBoxWrap>.slideMenuBox");
		MenuItemElem.bind("click",function(){
			if($(this).hasClass("subMenuTrue")){
				var MenuIESubIndex=$("#menuList>.subMenuTrue").index($(this));
				var child_menu_left =$(this).offset().left;
				var child_menu_top =$(this).offset().top+1;
				child_menu.css({display:"none"});
				$(child_menu.get(MenuIESubIndex)).css({left:child_menu_left,top:child_menu_top}).fadeIn("fast");
				return false;
			}else{
				child_menu.css({display:"none"});
				return false;
			}
		});
		$("#childMenuBoxWrap .hideSlideMenu").bind("click",function(){
			$(this).parent().parent().parent().fadeOut("fast");
		});
		$("#childMenuBoxWrap ul li").bind("click",function(){
			$(this).parent().parent().parent().parent().fadeOut("fast");
		});
	},
	menuAddress:function(){
		var indexText = $("#menuList .itemText").eq(0).text();
		//var imageUrl = $("#menuList .itemText").eq(0).attr("imageUrl");
		$("#address").append("<span>您所在的位置:</span><span class='marg_lef'>"+indexText +"</span>");
		var MenuItemElem = $("#menuList>li");
		var child_menu = $("#childMenuBoxWrap>.slideMenuBox");
		MenuItemElem.bind("click",function(){
			if($(this).find("div.subicon").hasClass("subiconTrue")){
				return false;
			}else{
				$.loading.show();
				$("#address").contents().remove();
				var ItemText = $(this).find(".itemText").text();
				$("#address").append("<span>您所在的位置:<span class='marg_lef5'>"+ItemText +"</span></span>");
				var ItUrl = $(this).find(".itemText").attr("ItUrl");
				$("iframe#AI_frame").attr("src",ItUrl);
				$.loading.loadElemId("AI_frame");
				return false;
			}
		});
		$(child_menu).find("li").bind("click",function(){
			$.loading.show();
			var liItemTextElem = $(this).find("span.liItem").text();
			var ItUrl = $(this).attr("ItUrl");
			var titItemTextElem = $(this).parent().parent().parent().prev().prev("div.slideMB_title").find("div.itemText").text();
			$("#address").contents().remove();
			$("#address").append("<span>您所在的位置:<span class='marg_lef5'>"+titItemTextElem +"</span><span class='marg_lef5'>>></span><span class='marg_lef5'>"+liItemTextElem +"</span></span>");
			$("iframe#AI_frame").attr("src",ItUrl);
			$.loading.loadElemId("AI_frame");
		});
		
	}
			
};
$.frameLayout ={
	setPageLoad : function() {
		var pageW = pageWidth();
		var pageH = pageHeight();
		var hdHeight= $("#hd").height();
		$("#AI_frame").css({top:hdHeight}).height(pageH-hdHeight);
		$("#AI_frame").width(pageW);
	},
	resizePage :function(){
		$(window).resize(function(){
		    $.frameLayout.setPageLoad();
			$.systemAdmin.showMain();//用户信息组件
			if($("div#Minimize").css("display")=="block"){
				$.frameLayout.AutoButMax();	//最大化效果
			}else if($("div#Maximize").css("display")=="block"){
				$.frameLayout.AutoButMin();	//最小化效果
			}
		});
	},
	AutoButMax:function(){
		var pageW = pageWidth();
		var pageH = pageHeight();
		var hdHeight= $("#hd").height();
		$("#hd").css({position:"absolute",top:"-82px"});
		$("#AI_frame").css({position:"absolute",top:hdHeight-82}).height(pageH-hdHeight+82);
		$("#AI_frame").width(pageW);
		
	},
	AutoButMin:function(){	
		var pageW = pageWidth();
		var pageH = pageHeight();
		var hdHeight= $("#hd").height();
		$("#hd").css({"top":"0px"});
		$("#AI_frame").css({top:hdHeight}).height(pageH-hdHeight);
		$("#AI_frame").width(pageW);
	},
	AutoButMaxAnimate:function(){
		var pageW = pageWidth();
		var pageH = pageHeight();
		var hdHeight= $("#hd").height();
	/*if ($.browser.msie){//如果是ie执行下边代码
      		$("#hd").css({position:"absolute",top:"-82px"});
			$("#AI_frame").css({position:"absolute",top:hdHeight-82}).height(pageH-hdHeight+82);
			$("#AIUE_menu").css({top:"47px"});
 		 }*/
		 if ($.browser.mozilla){//如果是火狐执行下边代码
			$("#hd").stop().animate({top:"-=82px"},{queue:false, duration:1200, easing: 'easeOutBounce'});
			$("#AI_frame").css({position:"absolute"}).height(pageH-hdHeight+82).animate({top:"-=82px"},{queue:false, duration:1200, easing: 'easeOutBounce',complete:function(){
			$("#AIUE_menu").css({top:"47px"});
			$("div.subiconTrue").css({left:"30px",top:"54px"});
			return false;
		}});
		}else{
			$("#hd").css({position:"absolute",top:"-82px"});
			$("#AI_frame").css({position:"absolute",top:hdHeight-82}).height(pageH-hdHeight+82);
			$("#AIUE_menu").css({top:"47px"});
			$("div.subiconTrue").css({left:"30px",top:"54px"});
		}
		$("#AI_frame").width(pageW);
		
	},
	AutoButMinAnimate:function(){	
		var pageW = pageWidth();
		var pageH = pageHeight();
		var hdHeight= $("#hd").height();
		/*if ($.browser.msie){//如果是ie执行下边代码
      		$("#hd").css({"top":"0px"});
			$("#AI_frame").css({top:hdHeight}).height(pageH-hdHeight);
 		}*/
		if ($.browser.mozilla){//如果是火狐执行下边代码
    	 	$("#hd").stop().animate({top:"+=82px"},{queue:false, duration:1200, easing: 'easeOutBounce'});
			$("#AI_frame").css({position:"absolute"}).height(pageH-hdHeight).animate({top:"+=82px"},{queue:false, duration:1200, easing: 'easeOutBounce'});
		} else{
			$("#hd").css({"top":"0px"});
			$("#AI_frame").css({top:hdHeight}).height(pageH-hdHeight);
		}
		$("#AI_frame").width(pageW);
	},
	AutoCheckMax:function(){
		$("#Maximize").bind("click",function(){
			var pageW = pageWidth();
			$(this).css({display:"none"});
			$("div#Minimize").show();
			$("<div id='MaximizeText'>请按F11,体验最佳显示效果</div>").appendTo("body").css({position:"absolute",width:"300px",height:"30px","z-index":"99999",left:(pageW-300)/2,top:"200px",color:"#fff",background:"#0d408c","text-align":"center","line-height":"30px",display:"none","font-size":"14px"}).fadeIn(2000).fadeOut(2000);
			function DeleMaxText(){
				$("#MaximizeText").remove();
			}
			setTimeout(DeleMaxText,5000);
			//$.frameLayout.AutoButMax();
			$.frameLayout.AutoButMaxAnimate();
			
			/*if($("#AIUE_menu").css("top"=="47px")){
				$("#AIUE_menu").bind("mousemove",function(){
					$(this).css({top:"87px"});									  
				});
				$("#AIUE_menu").bind("mouseout",function(){
					$(this).css({top:"47px"});									  
				});
			}*/
		});
	},
	AutoCheckMin:function(){
		$("#Minimize").bind("click",function(){
			$(this).css({display:"none"});
			$("div#Maximize").show();
			//$.frameLayout.AutoButMin();
			$.frameLayout.AutoButMinAnimate();	
			$("#AIUE_menu").css({top:"27px"});
			$("div.subiconTrue").css({left:"54px",top:"20px"});
		});		
	}
};	
$.loginEffe = {
	layoutFormBox:function() {
		var pageW = pageWidth();
		var pageH = pageHeight();
		var boxWidth= $("#login_box").width();
		var boxHeight= $("#login_box").height();
		$("#login_box").css({left:(pageW-boxWidth)/2,top:(pageH-boxHeight)/2});
	},
	layoutResize:function(){
		$("#resizeCheckBut").bind("click",function(){
			$.loginEffe.layoutFormBox();	
			$.loginEffe.formBoxBgEffent();
			$.loginEffe.resizePointEffe();
		});
		$(window).resize(function(){
			$("#resizeCheckBut").trigger("click");
		});
	},
	loginButEffe:function(){
		$("#login_button").hover(function(){
			$(this).addClass("login_buttonHover");							  
		},function(){
			$(this).removeClass("login_buttonHover");		
		});
	},
	formBoxBgEffent:function(){/*这里遗留了一个动画队列的问题,等待进一步的解决*/
		var checkPointElem = $("div#loginCheckPointBox>div.CheckPoint");
		var loginBgElem = $("#canvasWrap>div.login_canvas");
		checkPointElem.eq(0).addClass("CheckPointActive");
		var pageW = pageWidth();
		var pageH = pageHeight();
		$("div#canvasShowBox").css({width:pageW,height:pageH});
		$("div#canvasWrap").css({width:pageW*4,height:pageH});
		loginBgElem.css({width:pageW,height:pageH});
		$(checkPointElem).bind("click",function(){
			var activeCheckIndex = checkPointElem.index($("div#loginCheckPointBox>div.CheckPointActive"));	
			var PointCheckIndex =checkPointElem.index($(this));
			var Num = PointCheckIndex-activeCheckIndex;
			var NewWidth = Num*pageW;
			if(Num>0){
				$("div#canvasWrap").stop().animate({left:"-="+NewWidth+"px"},{queue:false, duration:1200, easing: 'easeOutBounce',complete:function(){
					return false;
				}});
			}else if(Num<0){
				var NewWidth = -NewWidth;
				$("div#canvasWrap").stop().animate({left:"+="+NewWidth+"px"},{queue:false, duration:1200, easing: 'easeOutBounce'});
			}
			$(this).siblings().removeClass("CheckPointActive");
			$(this).addClass("CheckPointActive");
			/*$(loginBgElem.get(PointCheckIndex)).siblings().fadeOut("slow");
			$(loginBgElem.get(PointCheckIndex)).fadeIn("slow");
			$(loginBgElem.get(PointCheckIndex)).siblings().stop().fadeTo(850, 0);
			$(loginBgElem.get(PointCheckIndex)).stop().fadeTo(650, 1);*/	
		});
	},
	resizePointEffe:function(){
		var checkPointElem = $("div#loginCheckPointBox>div.CheckPoint");
		var loginBgElem = $("#canvasWrap>div.login_canvas");
		checkPointElem.eq(0).addClass("CheckPointActive");
		var pageW = pageWidth();
		var pageH = pageHeight();
		$("div#canvasShowBox").css({width:pageW,height:pageH});
		$("div#canvasWrap").css({width:pageW*4,height:pageH});
		loginBgElem.css({width:pageW,height:pageH});
	}
};
$.AIUETree = {
	addTabs:function(title,href) {
		var conElem = $('#main-center');
		if (conElem.tabs('exists', title)){  
			conElem.tabs('select', title);  
		} else {  
			if (href){  
				//var w=$("#main-center").width();
				//var h=$("#main-center").height()-40;
				//alert(w+"+"+h);
				$.loading.show();
				var content = '<iframe id="tabs_frame" οnlοad="javascript:$.loading.fadeOut()" frameborder="0" allowtransparency="true" src="'+href+'" style="width:100%; height:100%;"></iframe>';  
				
			} else {  
				var content = '请查看是否含有href属性';  
			}  
			conElem.tabs('add',{  
				title:title,  
				closable:true, 
				fit:true,
				content:content  
			});  
		}  
	},
	loadTree:function(url){
		$("#AIUETree").tree({
			url:url,
			dnd:true,
			onClick:function(node){ //onClick:鼠标点击事件
			  if(node.attributes.href){
				  $.AIUETree.addTabs(node.text,node.attributes.href); //open_testcase()为执行的方法 
			  }else{
				  return false;
			  }
			},
			onLoadSuccess:function(){
				return false;
			}
		});
	}
};
$.AIUEForm={
	layout:function(){
		$("table.form-layout_R2>tbody>tr").each(function(){
			if($(this).find("td").attr("colspan") == 2){
				$(this).find("td").css({"text-align":"center"});
			}else{
				$(this).find("td:even").css({width:"30%","text-align":"right",color:"#555555","font-weight":"bold",padding:"2px 5px"});	
				$(this).find("td:odd").css({width:"70%","text-align":"left",color:"#555555"});		
			}
				
		});		
		$("table.form-layout_R4>tbody>tr").each(function(){
			if($(this).find("td").attr("colspan") == 4){
				$(this).find("td").css({"text-align":"center"});
			}else{
				$(this).find("td:even").css({width:"15%","text-align":"right",color:"#555555","font-weight":"bold",padding:"2px 5px"});	
				$(this).find("td:odd").css({width:"35%","text-align":"left",color:"#555555"});		
			}
				
		});	
		$("table.form-layout_R6>tbody>tr").each(function(){
			if($(this).find("td").attr("colspan") == 6){
				$(this).find("td").css({"text-align":"center"});
			}else{
				$(this).find("td:even").css({width:"10%","text-align":"right",color:"#555555","font-weight":"bold",padding:"2px 5px"});	
				$(this).find("td:odd").css({width:"23%","text-align":"left",color:"#555555"});		
			}
				
		});	
		//alert(1111);
	}
};
$.AIUECombo={
	Effect:function(selectId,slideBoxId){
		$("ul.comboEffe>li:even").css({background:"#f2f2f2",height:"25px","line-height":"25px",cursor:"pointer",color:"#555555"});	
		$("ul.comboEffe>li:odd").css({background:"#f8f8f8",height:"25px","line-height":"25px",cursor:"pointer",color:"#555555"});
		$(selectId).combo({required:true,editable:false});
		$(slideBoxId).appendTo($(selectId).combo('panel'));
		$(slideBoxId).find("ul.comboEffe>li").bind("click",function(){
			var v = $(this).find("input:radio").val();
			var s = $(this).find("input:radio").next('span').text();
			$(this).find("input:radio").attr("checked","checked");
			$(selectId).combo('setValue', v).combo('setText', s).combo('hidePanel');
		});
		//alert(1111);
	},
	boxEffect:function(){
		$("div.combobox-item:even").css({background:"#f2f2f2",height:"25px","line-height":"25px",cursor:"pointer",color:"#555555"});
		$("div.combobox-item:odd").css({background:"#f8f8f8",height:"25px","line-height":"25px",cursor:"pointer",color:"#555555"});
		//alert(1111);
	}
};
})(jQuery);//使用闭包


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lixp3

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值