炫意html5
最早CSS3和HTML5移动技术网站之一

仿淘宝智能浮动的JavaScript代码

我们经常在淘宝网看到这样的特效,商品列表特别长,而商品列名称始终保持在最顶端。如果你把滚动条滚动至最上边了,那么它会自动判断是否到顶端了,然后一直置顶从而不怕遮挡。

这种特效是通过JavaScript和CSS实现的,在实际开发中有不少用途,下面是我找到的一个使用JavaScript制作的仿淘宝智能浮动的源代码,兼容性不错,在IE、Firefox、Chrome下都能正常工作。

在Z-Blog中使用这个特效代码需要注意,如果在侧边栏使用,则需要注意,侧栏中的栏目不能使用JavaScript动态加载,必须用静态的格式,否则在JavaScript会错误的计算页面高度,上下滚动的时候会出现错位现象。

以下是相关代码:

jQuery 代码

(function(){

         var oDiv=document.getElementById("float");

        var H=0,iE6;

        var Y=oDiv;

        while(Y){H+=Y.offsetTop;Y=Y.offsetParent};

        iE6=window.ActiveXObject&&!window.XMLHttpRequest;

       if(!iE6){

            window.onscroll=function()

            {

                var s=document.body.scrollTop||document.documentElement.scrollTop;

                if(s>H){oDiv.className="div1 div2";if(iE6){oDiv.style.top=(s-H)+"px";}}

                else{oDiv.className="div1";}   

            };

        }

    })();

HTML 代码

<div id="box">

            <div id="float" class="div1">

            //随滚动移动的部分代码

            </div>

        </div>

CSS 代码

#box{float:left;position:relative;width:295px;}

        .div1{}

        .div2{position:fixed;_position:absolute;top:3px;z-index:295;}

炫意HTML5 » 仿淘宝智能浮动的JavaScript代码

CSS3教程HTML5教程