/*任意位置浮动固定层*/ /*没剑(http://regedit.cnblogs.com) 08-03-11*/ /*说(shuō)明(míng):可(kě)以让指定的层浮动到网页上的任何位置,当滚动条滚动时它会保持在(zài)当前位置不变,不会产(chǎn)生闪动*/ /*2008-4-1修改:当(dāng)自定义right位置时无效,这里加(jiā)上一个(gè)判断 有值时就不设置,无(wú)值时要(yào)加18px已(yǐ)修(xiū)正层位置在ie6下的问题 */ /*调用: 1 无(wú)参(cān)数调用:默认浮(fú)动在右下角(jiǎo) $("#id").floatdiv(); 2 内置固(gù)定位置(zhì)浮(fú)动 //右下角(jiǎo) $("#id").floatdiv("rightbottom"); //左(zuǒ)下角 $("#id").floatdiv("leftbottom"); //右下角 $("#id").floatdiv("rightbottom"); //左上(shàng)角 $("#id").floatdiv("lefttop"); //右上角 $("#id").floatdiv("righttop"); //居中 $("#id").floatdiv("middle"); 3 自定义(yì)位置浮动 $("#id").floatdiv({left:"10px",top:"10px"}); 以上参数,设置浮动层在left 10个像素,top 10个像素的位置 */ jQuery.fn.floatdiv=function(locations){ //ie6要隐藏纵(zòng)向滚(gǔn)动条 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;//层(céng)的(de)绝对定位(wèi)位置 if(locations==undefined || locations.constructor == String){ switch(locations){ case("rightbottom")://右下角 loc={right:"0px",bottom:"0px"}; break; case("leftbottom")://左下角 loc={left:"0px",bottom:"0px"}; break; case("lefttop")://左上角 loc={left:"0px",top:"0px"}; break; case("righttop")://右上角 loc={right:"0px",top:"0px"}; break; case("middle")://居中 var l=0;//居左 var t=0;//居(jū)上 var windowWidth,windowHeight;//窗口的高和宽 //取(qǔ)得窗口的高和宽 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://默认为右(yòu)下角(jiǎo) 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修改:当(dāng)自定义right位置时无效,这里(lǐ)加上一个判断 //有(yǒu)值时就不设置,无值(zhí)时(shí)要加18px已修正层(céng)位置 if($(this).css("right")==null || $(this).css("right")==""){ $(this).css("right","18px"); } } $(this).css("position","absolute"); } }); };