jquery插件编写方法
2012-03-21 17:12
519 查看
使用闭包。
面向对象编程
面向对象编程
/** * 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" onload="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);//使用闭包
相关文章推荐
- jquery插件编写方法
- jQuery插件的编写方法
- 举例说明jquery插件的编写方法
- 举例说明jquery插件的编写方法
- 编写一个jQuery的扩展方法(插件)
- 编写基于jQuery的插件的方法
- jQuery插件的编写方法
- 扩展编写jquery插件的方法
- 编写jQuery插件的方法
- jquery编写插件的方法
- 再谈:jquery编写插件的方法
- jquery编写插件的方法
- jQuery定义插件的方法
- 编写自己的jQuery提示框(Tip)插件
- 编写jquery插件
- jQuery插件开发方法
- 缓冲加载图片的 jQuery 插件 lazyload.js 使用方法详解
- jquery开发插件的两个方法
- jQuery插件编写格式
- 页面渲染是否结束 与 jquery插件方法是否可以应用