动态随滚动条一起滚动DIV,点击恢复滚动条位置
给网页添加随滚动条一起滚动按钮,单击按钮滚动条恢复到网页顶部。(兼容ie6,ie7,ie8,firefox,chrome)
var floatDiv;
var visibleHeight ;
var visibleWidth ;
//初始化函数,判断是否要创建滚动DIV
window.onload = function(){
visibleHeight = (document.documentElement.clientHeight == 0 ? document.body.clientHeight : document.documentElement.clientHeight);
visibleWidth = (document.documentElement.clientWidth == 0 ? document.body.clientWidth : document.documentElement.clientWidth);
var _scrollHeight = Math.max(document.documentElement.scrollHeight,document.body.scrollHeight);
if(_scrollHeight>visibleHeight){
floatDiv = document.createElement("div");
floatDiv.style.top = visibleHeight - 40+"px";
floatDiv.style.left = visibleWidth - 80 +"px";
floatDiv.style.position = "absolute";
floatDiv.style.cursor = "pointer";
floatDiv.onclick = recoverWindow;
document.body.appendChild(floatDiv);
var floatImg = document.createElement("img");
floatImg.src = "/iKnow/resources/icons/silk/top.png";
floatDiv.appendChild(floatImg);
if(window.addEventListener){ //Firefox,
document.addEventListener("scroll",scrollHandler,false);
}else{ //IE
window.attachEvent("onscroll",scrollHandler);
}
}
}
//DIV随滚动窗口一起滚动
function scrollHandler(){
var _scrollTop = document.documentElement.scrollTop + document.body.scrollTop;
var _scrollLeft = document.documentElement.scrollLeft + document.body.scrollLeft;
floatDiv.style.top = visibleHeight + _scrollTop - 40 + "px";
floatDiv.style.left = visibleWidth + _scrollLeft - 80 + "px";
}
//恢复滚动条到窗口开始处
function recoverWindow(){
var _scrollTop = document.documentElement.scrollTop + document.body.scrollTop;
if(_scrollTop > 0){
window.scrollBy(0,-100);
window.setTimeout(recoverWindow,20);
}
}
?