*fix: The element to be positioned
*rel: A relatively positioned element
*options:{},align: Right and left alignment; Vlign: vertical alignment; Xleft: horizontal recharge value; Xleft: vertical recharge value; Adjust: whether the relative window adjusts automatically; Rwindow: Position relative to Window (align& Vlign is centered vertically or horizontally for center);
*/
(function (win,$) {
Win.rposition=function (fix,rel,options) {
var rectleft,recttop,recth=fix.outerheight (), Rectw=fix.outerwidth (), wh=$ (window). Height (), ww=$ (window). Width (),
st=$ (document). ScrollTop (), sl=$ (document). ScrollLeft (),
defaults={
Align: "left",
Vlign: "Top",
xleft:0,
xtop:0,
Adjust:true,
Rwindow:false
},
options = $.extend (defaults, options);
var rectrel={
l:$ (rel). Offset (). Left,
t:$ (rel). Offset (). Top,
w:$ (rel). Outerwidth (),
h:$ (rel). Outerheight ()
};
Switch (options.align) {
Case "left":
Rectleft=rectrel.l;break;
Case ' right ':
Rectleft=rectrel.l+rectrel.w;break;
Case "Center":
Rectleft=rectrel.l+rectrel.w/2;break;
Case "Rleft":
Rectleft=rectrel.l-rectw;break;
Default
RECTLEFT=RECTREL.L;
};
Switch (options.vlign) {
Case ' top ':
Recttop=rectrel.t;break;
Case "Center":
Recttop=rectrel.t+rectrel.h/2;break;
Case "Vbottom":
RECTTOP=RECTREL.T-RECTH; Break
Case "Bottom":
Default
recttop=rectrel.t+rectrel.h;
};
if (Options.rwindow) {
if (options.align== "center") rectleft= (WW-RECTW)/2+SL;
if (options.vlign== "center") recttop= (WH-RECTH)/2+st;
};
if (options.adjust) {
if (RECTLEFT+RECTW>WW+SL) {rectleft-= (RECTLEFT+RECTW)-(WW+SL)}
if (recttop+recth>wh+st) {recttop=rectrel.t-recth;}
};
$ (fix). CSS Tutorial ({"Left": Rectleft+options.xleft, "Top": Recttop+options.xtop});
}
}) (Window,jquery)