使用纯javascript将绝对定位的元素放在窗口顶部

时间:2013-10-08 23:42:28

标签: javascript css window positioning absolute

在纯JavaScript中,我需要一种方法,用于在WINDOW顶部放置一个绝对定位的元素(它相对于主体绝对定位),而不是正文。

它不能是固定位置,只能是绝对的。我目前正在使用一些hackish方法:

var timeOut;
function scrollToTop() {
    if (document.body.scrollTop!=0 || document.documentElement.scrollTop!=0){
        window.scrollBy(0,-50);
        timeOut=setTimeout('scrollToTop()',10);
    }
    else clearTimeout(timeOut);
}

和......

onclick="scrollToTop();return false"

......提出一个绝对定位的div。

现在,根据用户在页面上的位置,我需要窗口显示在浏览器窗口的顶部,而不是文档的顶部。我知道如何在jQuery中执行此操作,但我无法想到javascript中的方法。

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:1)

喜欢这个?每次单击按钮(已修复)时,窗口顶部都会添加一个产品菜单栏div。

http://jsfiddle.net/kmFQD/1

代码:

function insertAtTop()
{
    var newDiv = document.createElement("div");
    newDiv.innerHTML = "Product Menu Bar";
    newDiv.className = "productMenuBar";
    newDiv.style.top = pageYOffset + "px";

    document.body.appendChild(newDiv);
}