/*任意(yì)位置浮动固定(dìng)层*/ /*没剑(http://regedit.cnblogs.com) 08-03-11*/ /*说(shuō)明:可以让指定的层浮(fú)动到网页上的任何位(wèi)置,当滚动条(tiáo)滚动(dòng)时它会保持在(zài)当前位置不变,不会产生闪动*//*2008-4-1修(xiū)改(gǎi):当自定义right位置时无(wú)效,这里加上一个判断(duàn) 有值时就不设置,无(wú)值时要加18px已修正层位置在(zài)ie6下的问(wèn)题 */ /*调用: 1 无参数调用:默认浮动(dòng)在(zài)右下(xià)角(jiǎo) $("#id").floatdiv();2 内置固定位置浮动 //右下角 $("#id").floatdiv("rightbottom"); //左下角 $("#id").floatdiv("leftbottom"); //右下(xià)角 $("#id").floatdiv("rightbottom"); //左上(shàng)角(jiǎo) $("#id").floatdiv("lefttop"); //右上(shàng)角 $("#id").floatdiv("righttop"); //居中 $("#id").floatdiv("middle");3 自定义位置浮动 $("#id").floatdiv({left:"10px",top:"10px"}); 以上参数,设置(zhì)浮动层在left 10个像素(sù),top 10个像素的(de)位置*/ jQuery.fn.floatdiv=function(locations){ //ie6要隐藏纵向滚动条(tiáo) var isIE6=false; if($.browser.msie && $.browser.version=="6.0"){ $("html").css("overflow-x","auto").css("overflow-y","hidden"); isIE6=true; }; $("body").css({margin:"0px",padding:"0 10px 0 10px", border:"0px", height:"100%", overflow:"auto" }); return this.each(function(){ var loc;//层的绝(jué)对(duì)定位(wèi)位置 if(locations==undefined || locations.constructor == String){ switch(locations){ case("rightbottom")://右下角 loc={right:"0px",bottom:"0px"}; break; case("leftbottom")://左(zuǒ)下角 loc={left:"0px",bottom:"0px"}; break; case("lefttop")://左上角 loc={left:"0px",top:"0px"}; break; case("righttop")://右(yòu)上(shàng)角 loc={right:"0px",top:"0px"}; break; case("middle")://居(jū)中 var l=0;//居(jū)左 var t=0;//居上 var windowWidth,windowHeight;//窗(chuāng)口的(de)高(gāo)和(hé)宽 //取得窗口的高和宽 if (self.innerHeight) { windowWidth=self.innerWidth; windowHeight=self.innerHeight; }else if (document.documentElement&&document.documentElement.clientHeight) { windowWidth=document.documentElement.clientWidth; windowHeight=document.documentElement.clientHeight; } else if (document.body) { windowWidth=document.body.clientWidth; windowHeight=document.body.clientHeight; } l=windowWidth/2-$(this).width()/2; t=windowHeight/2-$(this).height()/2; loc={left:l+"px",top:t+"px"}; break; default://默认为右下角 loc={right:"0px",bottom:"0px"}; break; } }else{ loc=locations; } $(this).css("z-index","9999").css(loc).css("position","fixed"); if(isIE6){ if(loc.right!=undefined){ //2008-4-1修改:当自定义right位置时无效,这里加上一(yī)个判(pàn)断 //有(yǒu)值时就不设置,无值(zhí)时要(yào)加18px已修正层位置 if($(this).css("right")==null || $(this).css("right")==""){ $(this).css("right","18px"); } } $(this).css("position","absolute"); } }); };