如何制作自动置顶的悬浮工具条(兼容IE6)?

作者: NickYang 分类: Wordpress,技术文章 发布时间: 2012-10-18 23:29

扒拉异次元分享工具条的同时,因为前面没有解决当滚动条滚过分享工具条的时候,工具条的CSS会改变格式,会改为position:fixed; top:0px。经过一番研究,发现应该是用JS来计算工具条的位置,然后在计算滚动条的位置,这样当滚过工具条时,重新设置工具条的CSS样式就可以了。查了下相关的资料,简单的写了一个,代码如下:

<!-- 滚动后分享工具条改变CSS style -->
<script type="text/javascript">
var IO=document.getElementById('你的CSS id'),Y=IO,H=0,IE6;
IE6=window.ActiveXObject&&!window.XMLHttpRequest;
while(Y){H+=Y.offsetTop;Y=Y.offsetParent};
if(IE6)
    IO.style.cssText="position:absolute;top:expression(this.fix?(document"+
        ".documentElement.scrollTop-(this.javascript||"+H+")):0)";
window.onscroll=function (){
    var d=document,s=Math.max(d.documentElement.scrollTop,document.body.scrollTop);
    if(s>H&&IO.fix||s<=H&&!IO.fix)return;
    if(!IE6){IO.style.position=IO.fix?"":"fixed" IO.style.top="0px"};
    IO.fix=!IO.fix;
};
try{document.execCommand("BackgroundImageCache",false,true)}catch(e){};
 //]]>
</script>

代码中对IE的版本进行了判断,做了不同情况的处理,所以完全兼容IE6,不过还是有待测试,因为我没有IE6的环境。现在再看看百度分享工具条的样子,看起来舒服多了。

图我就不多贴了,大家可以通过拖动滚动条来看看效果。不过可惜的是还有一个问题没解决,就是前一篇后一篇的问题,包括title,还是有一个莫名的尖括号出来,烦恼。。。。。 等解决完这个问题就分享这个工具条给大家。

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

发表评论

电子邮件地址不会被公开。 必填项已用*标注