xoops实现浮动广告层是比较困难的,总是定死在那不动,有没有办法解决呢?

阅读更多

?

Mar 17

xoops实现浮动广告层是比较困难的,总是定死在那不动…..有没有办法解决呢…当然有啦…本人google了一下…解决了xoops不能浮动的问题

浮动图层的原理就是利用document.body.scrollLeft和document.body.scrollTop动态的改变图层的位置,但是当HTML有了类似这样的头之后,图层就打死也不动了。

跟踪之后可以发现,当定义了DOCTYPE之后document.body.scrollLeft和document.body.scrollTop无论滚动条滚动到何处,这样的属性永远都等于零。于是图层就不再浮动了。

一般的解决办法是去掉那个头,呵呵。这里说的是另外一个办法。

在定义了DOCTYPE之后,使用document.documentElement.scrollLeft代替document.body.scrollLeft。同理使用document.documentElement.scrollTop代替document.body.scrollTop。

这样在有DOCTYPE的时候,图层也可以滚动了。

但是,在没有DOCTYPE的时候document.documentElement.scrollLeft也永远为零了,那么,能否有一个在有没有DOCTYPE定义都可以用的方案涅?嘿嘿。

那就可以这样写:

New@#”>

if(document.documentElement && document.documentElement.scrollLeft)

{

scrollLeft = document.documentElement.scrollLeft;

}

else if (document.body)

{

scrollLeft = document.body.scrollLeft;

}

这样就可以在任何情况下使用scrollLeft了,其他的属性(scrollTop、clientWidth、clientHeight)同理。

?

你可能感兴趣的:(Google,HTML)