最近在一些博客看到侧边栏某些板块,随着滚动条的滑动,而跟着滑动或者固定的效果,感觉非常的人性化,一来可以弥补当一个页面很长,但侧边栏太短的时候的空白,二来可以合理利用空间展示更多信息,可以大大的提高曝光率和点击率。这样子的效果很适合于文章的列表(比如月度排行、热门文章之类的),还有适合于广告联盟的展示。所以去网上找了一些资料,整理了一下,现在分享给大家,也方便以后自己查阅,希望对大家有用。
效果一:侧边栏固定模块
来源:卢松松博客
Js代码
//侧栏跟随 (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"; } }; } })();
注:为了减少js文件引用,这段代码可放入任意JS文件中
CSS代码:
/*侧栏跟随*/ #box_float {float:left; position:relative; width:250px;} .div1 {width:250px;} .div2 {position:fixed; _position:absolute; top:0; z-index:999;}
注:样式代码仅为参考,具体的调整,请结合自己的网站调整。
HTML代码:
<div id="box_float"> <div id="float" class="div1"> 这里写你网站的代码与标签 </div> </div>
注:这里可以放文章列表、联盟广告,总之是个提高点击率的好方法。wordpress用户把此段代码添加到sidebar.php的侧栏位置即可。
特别提示:此代码试用与任何CMS系统,但该特效在IE6下无法实现,其余浏览器均没问题,同时侧栏其余部分应使用静态文件调用,使用JS调用栏目会出现代码重叠现象,调用联盟广告没问题。