网上有很多这样的代码了。之前自己也找过许多,但用着不太习惯。
自己写了个漂浮广告的代码,支持根据参数,可以设置左或右显示。
js的代码主要是控制漂浮内容的显示位置。支持fixed属性的将采用css的fixed,对于ie6下不支持fixed的用js动态设置位置。
应用这段代码,需要了解漂浮的原理。所以请注意demo中浮动内容上的样式设置。

Code
1
var LB =
{
2
version:"0.1",
3
isIE6 :$.browser.msie && $.browser.version=="6.0",
4
pageMode:(document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
5
};
6
7
8
9
10
var SDA =
{};
11
12
SDA.Float = function(floatId,xPx,yPx,isLeft)
{
13
var curFloat = this;
14
var floatObj = $("#"+floatId)
15
16
var locCss=
{};
17
18
$(floatObj).find(".close").click(function()
{
19
$(floatObj).hide();
20
});
21
22
this.supportFixed=function()
{
23
locCss.bottom= yPx+"px";
24
$(floatObj).css(locCss);
25
$(floatObj).css("position","fixed");
26
}
27
28
this.supportIE6 = function()
{
29
var topHeight= LB.pageMode.scrollTop + LB.pageMode.clientHeight - document.getElementById(floatId).offsetHeight- yPx;
30
locCss.top = topHeight+"px";
31
$(floatObj).css(locCss);
32
setTimeout(function()
{
33
curFloat.supportIE6();
34
},80);
35
}
36
37
if(isLeft)
{
38
locCss.left = xPx+"px";
39
}else
{
40
locCss.right= xPx+"px";
41
}
42
43
if(LB.isIE6)
{
44
curFloat.supportIE6();
45
}else
{
46
curFloat.supportFixed();
47
}
48
49
}
50
51
$.Float = function(floatId,xPx,yPx,isLeft)
{
52
new SDA.Float(floatId,xPx,yPx,isLeft);
53
}
代码不复杂,感兴趣的同学可以看下demo就知道用了。
实例:Float.rar